Pagini recente » Borderou de evaluare (job #3208816) | Borderou de evaluare (job #325219) | Borderou de evaluare (job #24075) | Borderou de evaluare (job #2630930) | Borderou de evaluare (job #1987479)
Borderou de evaluare (job #1987479)
Raport evaluator
Compilare:
user.cpp: In function ‘int main()’:
user.cpp:2:534: 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){if(!e)return 1;if(e&1)return (1LL*b*lgpow((1LL*b*b)%MOD,e>>1,MOD))%MOD;else return lgpow((1LL*b*b)%MOD,e>>1,MOD);}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:575: 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){if(!e)return 1;if(e&1)return (1LL*b*lgpow((1LL*b*b)%MOD,e>>1,MOD))%MOD;else return lgpow((1LL*b*b)%MOD,e>>1,MOD);}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 | 24ms | 276kb | OK | 100 |
Punctaj total | 100 |