- [Time Gate]
- https://www.luogu.org/problem/P1965
[解题思路]
一道遗漏的数论水题
仔细观察不难发现公式: 位置编号 =(x+10^k*m)%n
那么 k 这么大, 又是求幂, 妥妥的快速幂模板!!
- #include <cstdio>
- #include <algorithm>
- using namespace std;
- int n,m,k,x;
- long long ans;
- inline long long ksm(int a,int b){
- ans=1;
- while(b){
- if(b&1)
- ans=ans*a%n;
- a=a*a%n;
- b>>=1;
- }
- return ans;
- }
- int main(){
- scanf("%d%d%d%d",&n,&m,&k,&x);
- printf("%lld\n",(x%n+ksm(10,k)%n*m)%n);
- return 0;
- }
转圈游戏
来源: http://www.bubuko.com/infodetail-3157325.html