代码:
#include<fstream>
using namespace std;
long long a[31],b[31];
long long n,m,k,x;
ifstream cin("circle.in");
ofstream cout("circle.out");
void init()
{
cin>>n>>m>>k>>x;
a[0]=1;
for (int i=1;i<31;i++) a[i]=a[i-1]*2ll;
b[0]=10ll%n;
for (int i=1;i<31;i++) b[i]=b[i-1]*b[i-1]%n;
}
int main()
{
init();
long long ans(x),t(m);
int i;
while (k)
{
for (i=30;i>=0;i--)
if (k>=a[i]) break;
t=t*b[i]%n;
k-=a[i];
}
cout<<(x%n+t)%n<<endl;
return 0;
}
posted on 2013-11-15 15:52
龙在江湖 阅读(393)
评论(0) 编辑 收藏 引用