1 solutions
-
0
B
算法 1
可以发现判定 是否合法的过程相当于每次把大数减掉两倍的小数,问是否能保持全正然后变成 。暴力实现判断,时间复杂度 ,期望得分 。
注意到过程相当于欧几里得算法求 ,可以变成 ,或者加个记忆化变成 ,期望得分 。
算法 2
时只有 是偶数合法。 时只有 合法, 时不合法, 时 合法。期望得分 。结合算法 1 期望得分 。
算法 3
观察大样例发现答案不大,考虑从 开始搜索答案。如果你像笔者一样加个 map 或者 umap 判重,时间复杂度 ,但是 umap 里存 个元素就爆了,大概可以通过 ,期望得分 。
注意到搜索出来的所有东西必然满足互质,而且两两不同,因为每一对合法数 倒着做的过程是唯一的,所以正着做也不会算重,把 umap 撇了,就是 ,据实现获得 分。如果实在跑不过 可以在最后特判一下:如果现在搜到的 满足 ,且 正在加 ,可以把后面的部分用除法算出来,可以快一点点。
算法 4
上面这个还是很难过 。
骗你的,我也不会做。原题。
- 1
Information
- ID
- 2822
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 10
- Tags
- (None)
- # Submissions
- 2
- Accepted
- 0
- Uploaded By