有一块布满器件的电路板,器件共N行M列。每个器件只有两种状态,经一次激光照射后状态反转。
初始时,器件的状态随机。激光的位置在每列器件的最上方,这意味着照射一次,当前列中的所有器件的状态全部反转。(激光可以多次照射同一列。)
当一行中的所有器件全为1时,本行处于导通状态。
给定一块电路板,并指定激光照射次数,求最大导通行数。
限定:3≤行数N≤100,3≤列数M≤20,1≤激光照射次数K≤M。
给的提示是,
考虑K的奇偶性及一行中0的个数的奇偶性。最终变为排序问题。
但是我连第一步应该做什么都不知道,就是,我连从哪里入手都不知道。。。
还请大神指点迷津
数据结构排序问题,智商不够,不明白这题目跟排序存在什么联系,求大神指点
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
- LininCH 2016-12-21 13:53关注
题我倒是读懂了,就是一个二位数组,初始化是随机的。而,数组的行数和列数按照要求来,你在人为设置k为多少。最终是排序问题,就如例题,当k=3,意思就是改变3列(改变的意思就是反转),改变的目的使的一行全为1。改变的总共方式有10种(按照例子),选出其中的一种全为1做多的情况。
细节我一时也还做不出来,难度主要在于反转和遍历这个问题上吧。解决 无用评论 打赏 举报