杭电OJ 1032

题目:点击打开链接

想不出什么太好的方法(比如通过数论……),所以不明白那些0MS的AC是怎么做的。我的方法就是建表,递归……考虑到超出10W的数据没法确定表长了,偷懒用了C++的map模板,查询的cost稍微费些(map的数据结构为红黑树,查询的时间复杂为O(log(n))吧)。以下为15MS的AC代码。

这道题本来无甚,但解题过程中确碰到了很令我困扰的问题——原先的代码,i%2用了位运算,i&1——调试下来,当i为偶数时i&1 == 0的判定结果 竟然为假,跑到else里去执行了,但在else里打印i&1,结果分明是0嘛……

你可能感兴趣的:(杭电)