Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //n=7479 m=23 k=last k digits of s=7^23+4^23+7^23+9^23
- #include<iostream>
- #include<vector>
- #include<cmath>
- long long my_pow(long long a,int n,long long k)
- {
- if(!n)
- return 1;
- else if(n==1)
- return a;
- if(n&1)
- return (a*my_pow(a*a,(n-1)/2,k))%k;
- else
- return my_pow(a*a,n/2,k)%k;
- }
- int main()
- {
- int n,m,k;
- std::cout<<"Enter n,m,k: \n";
- std::cin>>n>>m>>k;
- std::vector<int> v;
- while(n>0)
- {
- v.push_back(n%10);
- n/=10;
- }
- long long k1=pow(10,k),s=0;
- for(std::vector<int>::iterator it=v.begin();it!=v.end();++it)
- s+=my_pow(*it,m,k1);
- std::cout<<"\nResult= "<<s;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement