Submission #20093

#TimeUsernameProblemLanguageResultExecution timeMemory
20093jihoon능력 (kriii4_S)C++98
0 / 100
0 ms1160 KiB
#include<cstdio> #define je 1000000007 long long gop(long long x,long long y){ x%=je;y%=je; x*=y;x%=je; return x; } long long hap(long long x,long long y){ x%=je;y%=je; x+=y;x%=je; return x; } long long div(long long x,long long y){ x%=je;y%=je; int left=je-2; long long gopp=y,ret=1; while(left){ if(left&1){ ret=gop(ret,gopp); } gopp=gop(gopp,gopp); left >>= 1; } ret=gop(ret,x); return ret; } int n; long long abil[5001][2]; long long can,sum=0,ans=0; int main(){ scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%d %d",&abil[i][0],&abil[i][1]); sum=hap(sum,abil[i][0]); } can=1; for(int i=0;i<n;i++){ can=gop(can,1000000000-abil[i][0]); can=div(can,1000000000); } can=(je+1-can)%je; for(int i=0;i<n;i++){ ans=hap(ans,gop(can,gop(abil[i][1],div(abil[i][0],sum)))); } printf("%lld\n",ans); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...