Pagini recente » Borderou de evaluare (job #150703) | Borderou de evaluare (job #3228703) | Borderou de evaluare (job #41378) | Borderou de evaluare (job #2333887) | Borderou de evaluare (job #1987476)
Borderou de evaluare (job #1987476)
Raport evaluator
Compilare:
user.cpp: In function ‘int main()’:
user.cpp:2:495: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
using namespace std;FILE *f=fopen("ackermann.in","r");FILE *g=fopen("ackermann.out","w");int T,N,M,MOD;int getphi(int nr){int phi=nr;for(int i=2;1LL*i*i<=nr;i++){if(nr%i==0){while(nr%i==0)nr/=i;phi=phi/i*(i-1);}}if(nr!=1)phi=phi/nr*(nr-1);return phi;}int lgpow(int b,int e,int MOD){int p=1;while(e){if(e&1){p=(1LL*b*p)%MOD;}b=(1LL*b*b)%MOD;e>>=1;}return p;}int compute(int a,int b,int p){if(p<=1)return 1;if(b==1)return a;return lgpow(a,compute(a,b-1,getphi(p)),p);}int main(){fscanf(f,"%d",&T);while(T--){fscanf(f,"%d%d%d",&N,&M,&MOD);fprintf(g,"%d\n",compute(N,M,MOD));}return 0;}
^
user.cpp:2:536: warning: ignoring return value of ‘int fscanf(FILE*, const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
using namespace std;FILE *f=fopen("ackermann.in","r");FILE *g=fopen("ackermann.out","w");int T,N,M,MOD;int getphi(int nr){int phi=nr;for(int i=2;1LL*i*i<=nr;i++){if(nr%i==0){while(nr%i==0)nr/=i;phi=phi/i*(i-1);}}if(nr!=1)phi=phi/nr*(nr-1);return phi;}int lgpow(int b,int e,int MOD){int p=1;while(e){if(e&1){p=(1LL*b*p)%MOD;}b=(1LL*b*b)%MOD;e>>=1;}return p;}int compute(int a,int b,int p){if(p<=1)return 1;if(b==1)return a;return lgpow(a,compute(a,b-1,getphi(p)),p);}int main(){fscanf(f,"%d",&T);while(T--){fscanf(f,"%d%d%d",&N,&M,&MOD);fprintf(g,"%d\n",compute(N,M,MOD));}return 0;}
^
Test |
Timp executie |
Memorie folosita |
Mesaj |
Punctaj/test |
1 | 20ms | 272kb | OK | 100 |
Punctaj total | 100 |