1 solutions
-
0
该题是一道融合了差分与快速幂的综合运用题
我们只需要求对于n个1,他们分别乘了多少个2、分别乘了多少个3,假设它们每个数至少都乘了t2个2,t3个3,那么最大公约数即为(2^t2*3^t3)%999999998,即求他们公共扩大了多少倍。
而2的t2次方,3的t3次方,就涉及了快速幂的知识点了。
那怎么知道每个数乘了多少个2和3呢?这时我们就可以想到数组,用两个数组将每个数分别乘了多少个2、3储存下来,这时对于储存的方法,我们就要想到差分数组,来求前缀和来得到每个位置分别乘了多少个2、3
详情见代码,本身题并不难,可能对于小白来说想不到差分,这种情况只能
菜就多练练
- 1
Information
- ID
- 6686
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 7
- Tags
- # Submissions
- 16
- Accepted
- 5
- Uploaded By