------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
T1:
第一道题,不简单就不是欢乐赛,但是还是有很多新手这一题做不出来。如果直接
只会输出一个换行,正确做法如下:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
T2:
这题也十分简单,用斐波那契公式求和公式:
但是要注意,因为n最大是INT_MAX,所以记得开long long。
代码如下:
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
T3:
这题的一个高精度符号’∑‘让新手们知难而退,太好了,但是其实说白了就是用每个韵母相对应的出现次数 * W[i],理清思路即可。
代码如下:
T4:
我认为这一题是本赛出最后一题以外最难的题。对我来说还是小菜一碟,对于没有接触过查找因数的新手来说容易time limit error。这题用的贪心算法可能对于新手来说也会有一定难度。我来介绍两个版本。
版本一:
根据我用一条命来换的测量,这样做的话会有几个TLE,其实可以优化f函数,把找因数的函数时间复杂度从O(N) 降到O(log N)。
最终AC代码如下:
T5:
这题不难,顺着题目的意思来就行了。记得下标不要弄混。
题目代码:
T6:
这题我的做法是拼命打补丁(所以死了很多次)。
要注意的有四项:
1.当数字形如xxxx......(x < 9)时,最优解是这个数字的位数-1个9,这是最显而易见的规律。
e.g : n = 53423,ans = 9999。
2.当数字的每一位都是九时,答案就是它本身。
e.g : n = 999,ans = 999。
3.当数字除了最后一位其他都是9时,答案也是它本身。
e.g : n = 9998,ans = 9998。
4.当数字的大部分位都是9,中间的几位<9时,答案是这个数字的位数-1个9。
e.g : n = 9899,ans = 999。
衣衫褴褛的代码如下:
如果这个题解对你有用,希望能点个赞支持一下!