1 solutions
-
0
C++ :
//AUTHOR::STDAFX //ALGORITHM::Math #define Mod 10007L #include <cstdio> using namespace std; typedef long long ll; int a,b,k,n,m; ll c[1010][1010]; ll fx(ll a,int b) { ll ans=1; a%=Mod; while(b>0){ if(b&1){ ans=(ans*a)%Mod; } b>>=1; a=(a*a)%Mod; } return ans%Mod; } int main(){ scanf("%d%d%d%d%d",&a,&b,&k,&n,&m); a%=Mod;b%=Mod; c[1][1]=c[1][2]=1; for(int i=2;i<=k;i++){ c[i][1]=1; for(int j=2;j<=m+1;j++){ c[i][j]=(c[i-1][j]+c[i-1][j-1])%Mod; } } c[k][m+1]*=fx(a,n); c[k][m+1]%=Mod; c[k][m+1]*=fx(b,m); c[k][m+1]%=Mod; printf("%d",c[k][m+1]); //fclose(stdin); //fclose(stdout); return 0; }Pascal :
program factor; var f:array[1..1005,0..1005]of longint; ans,a,b,k,n,m,i,j:longint; begin readln(a,b,k,n,m); a:=a mod 10007; b:=b mod 10007; f[1,1]:=1; for i:=2 to k+1 do for j:=1 to i do f[i,j]:=(f[i-1,j]+f[i-1,j-1])mod 10007; ans:=f[k+1,m+1]; for i:=1 to n do ans:=(ans*a)mod 10007; for i:=1 to m do ans:=(ans*b)mod 10007; writeln(ans); end.
- 1
Information
- ID
- 17943
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By