update:
rk2,好气啊
周日的颁奖取消了,就可以在北京旅游一天了,早晨就开开心心出去旅游了。突然,某群了说蓝桥杯出成绩了,我一看rk2,惊呆了。在明知道不是特等奖的情况下告诉你是rk2,好气啊,我队友都特等奖了,我才是rk2。但是看一看第一和第三,'穷游中国'的大佬,打不过,这辈子都是不可能打过的。
感谢 @Parallelc 的提醒,至于最后一题的标准做法应该是欧拉函数,利用欧拉函数的线性筛。题目的核心就是求前n项互质数的个数,但是需要求多次,对于求单次莫比乌斯反演可以说是最佳选择了,但是多次就需要用欧拉函数预处理了。我也不知道这题有没有被卡,nlogn在本机测试两秒左右,如果评测机性能比较优秀的话勉强是可以过的。
这道题求前n行,n列的和,所以可以用欧拉函数求,如果前n行m列那么只有莫比乌斯反演这一种方法,时间复杂度nlogn。当时可能还是没有好好学习这一部分的知识啊。还是需要再补一补数论啊。
没办法啊,技不如人,没想到o(n)的解法啊。
c++B组
感觉蓝桥杯越来越偏向ACM,连莫比乌斯反演都能考
A题,水题 74
B题,想都没想写了一个n*2^n的代码,然后跑了一分钟得到答案,至于标准做法,应该是动态规划。
C题,按照题意写即可,刚好两个月前学了树状数组,直接位运算求最低位1,答案:a^((a&(-a))<<1)
D题,直接o(n)暴力
E题写了一个o(n^4)的dp
F题莫比乌斯反演,只写出了o(nlogn)的接法,感觉1e7的数据要炸啊,感觉有o(n)的解法