Submission #1300797

#TimeUsernameProblemLanguageResultExecution timeMemory
1300797simona1230Asceticism (JOI18_asceticism)C++20
4 / 100
1 ms580 KiB
#include <bits/stdc++.h> using namespace std; const long long mod=1e9+7; long long pw(long long x,long long p) { if(p==0)return 1; if(p==1)return x; long long y=pw(x,p/2); y=y*y%mod; if(p%2==0)return y; return y*x%mod; } long long f[200001]; long long comb(long long k,long long n) { return f[n]*pw(f[k]*f[n-k]%mod,mod-2)%mod; } long long n,k; void solve() { f[0]=1; for(long long i=1;i<=n+1;i++) f[i]=f[i-1]*i%mod; long long c=-1; long long ans=0; for(long long i=0;i<k;i++) { c*=-1; ans+=c*comb(i,n+1)*pw(k-i,n); ans%=mod; //cout<<c*comb(i,n+1)*pw(k-i,n)<<endl;; } cout<<ans<<endl; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin>>n>>k; solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...