转圈游戏

题目链接

sol

直接快速幂+取模。。。没什么好说的

Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31

#include <cstring>
#include <cstdio>
#include <cmath>
#include <algorithm>
#include <queue>
#include <stack>
using namespace std;
int n,m,k,x;
long long (long long x,long long k)
{
long long ans=1;
while(k)
{
if(k&1)
{
ans*=x;
ans%=n;
}
x*=x;
x%=n;
k>>=1;
}
return ans;
}
int main()
{
scanf("%d%d%d%d",&n,&m,&k,&x);
printf("%lld",(x+1LL*f_pow(10,k)*m)%n);
return 0;
}