- 博客(3)
- 收藏
- 关注
原创 守望者的逃离——关于这道题的思考
这个时候我的建议是动态的去权衡。在遍历t的时候,我们记录两个距离,可以令为a和b。我们应该意识到,我们在这次选择下抛弃的方法确实是修改了m,但是因此产生的结果仍然存在变量b里,一旦在后面几步发现a=max(a,b)得到的是a=b,那么说明这次选择就是在修改m的情况下得到后面的最优,而不是选择跑步。对应代码如上,我想如果你思考了这段代码,可能会产生一个困惑,在a=max(a,b)处的比较赋值代码,说明了我们在这个时间段选择了其中一种方法产生的最值,那为什么不需要把其他方法中被我们修改的魔法值m复原呢?
2024-04-14 16:07:00 602
原创 P1854 Children‘s Game
我们如果使用sort函数对字符串数组a排序,cmp的代码是比较a[i]和a[j]的大小,这里我们不妨将cmp函数改为a[i]+a[j]和a[j]和a[i]比较大小,这样就有效的解决了前面那个问题同时符合我们的逻辑初衷。所以我们要做的就是给n个正整数排序,排序的规则的从第一位开始比较,从大到小,依次是第二位第三位,如果没有下一位,视为目前最大,排在前面。这个例子中,第一个字符串没有第2位字符相当于null,null的ascll值等于0,而‘d’的ascll的值为100,所以后者大于前者。
2024-04-14 13:08:04 723 1
原创 最长连续互质子序列
首先对于这种最长子序列问题,我们首先想到。我们看一下题目的限制条件,要求。互质即两个数之间的最大公约数为1,求解最大公约数在Python里面有gcd的包可以直接用,c++没有,不过可以利用牛顿的辗转相除法来写一个gcd函数,有关原理的帖子很多,这里不再赘述。ac代码如下。
2024-04-14 10:58:56 961 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人