题意:有两台机器,上面有多个工作区域,有多个任务,分别可以在两台机器的某一个区域上完成,两台机器一开始都在0区域上工作,每次更改区域,都会重新启动一次,让我们求出最小的重启次数。 思路:将两个区域连线,使用二分图,求出最大匹配数,容易想明白,正好就是最小重启的次数。 注意:0一开始就已经完成,不应该 ...
分类:
系统相关 时间:
2016-07-31 17:45:24
阅读次数:
200
这是一个相对简单的模拟,因为运算规则已经告诉了我们,并且比较简单,不要被吓到…… 思路:多项式除以另外一个多项式,如果能除,那么他的最高次一定被降低了,如果最高次不能被降低,那说明已经无法被除,就是题目要求输出的膜了,降低最高次的方法很简单,只要被除式的最高次 >= 除式的最高次,就将除式的最高次升 ...
分类:
其他好文 时间:
2016-07-31 17:34:32
阅读次数:
91
题目看上去很吓人,很高端,但其实很简单,不要被吓到,照搬题目的公式就可以了。 方法:用BFS求出最大块和重心,找出题目公式需要的未知量,然后套到题目公式里就可以求出答案了。 代码: ...
分类:
其他好文 时间:
2016-07-31 17:32:25
阅读次数:
134
题意:求出将两个字符串改成一样长度所能形成最大的相似度。 思路:这个可以说是编辑距离的一个变形,编辑距离最终状态时要两个字符串完全一致,这个就是要求长度一样,而且这个只允许插入“—”这一个字符。模仿编辑距离定义状态,dp[i][j]表示将第一个字符串的前i个字符与第二个字符串的前j个字符变为相同长度 ...
分类:
其他好文 时间:
2016-07-31 17:28:52
阅读次数:
145
思路:定义DP方程dp[i][j]标记选到第i个巧克力的时候,桌面上还剩下j个巧克力,状态转移有两个方向,dp[i-1][j-1],dp[i-1]lj+1],分别表示桌面上多了一个和消了一个,乘上需要的概率即可。 注意:这个题目的输入量很大,所以需要优化,首先是n+m是奇数的时候,或者m > c的时 ...
分类:
其他好文 时间:
2016-07-31 17:26:02
阅读次数:
169
这个我上来把题目理解错了,我以为所有人的牌都是一样的,感觉这个题太麻烦了吧,而且题目样例过不去啊……后来发现理解错了,给出的数据是他一个人的数据,就是让我们求他一定能赢的轮数,所有的牌是固定的(1 - n×m),然后就去找当前最大值就可以了,不断的更新被打出的牌,就可以求出答案了。 代码如下: ...
分类:
其他好文 时间:
2016-07-31 17:17:22
阅读次数:
90
题意:给你一些固定的字符串,在给出数字,根据键盘的对应关系,输出所有的满足条件的字符串,输出顺序无所谓。 思路:因为题目说了,输出比较小,说明测试数据并不强,所以可以暴力回溯求出答案,将所有的给出的字符串压缩为数字,再将对应相同数字的字符串存储起来(当时忘了这里,WA了几次),然后深搜即可。 注意: ...
分类:
其他好文 时间:
2016-07-31 15:58:58
阅读次数:
136
白书上的例题。花了很多时间在找bug上,刚学树状数组,这道题add操作时要注意上限不是n。 ...
分类:
编程语言 时间:
2016-07-29 16:33:35
阅读次数:
149
这个题目的深搜形式,我也找出来了,dfs(i,j)表示第i个人选到了第j个物品,但是我却无限RE了,原因是我的viod型深搜太过暴力,我当时定义了一个计数器,来记录并限制递归的层数,发现它已经递归到了1500层,加上限制后,WA了……后来学习了网上的方法,使用bool型的深搜,每一次选择都去跟题目中 ...
分类:
其他好文 时间:
2016-07-24 17:59:55
阅读次数:
209