# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
19385 | imsifile | Ω (kriii4_P3) | C++98 | 0 ms | 1084 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<stdio.h>
#define mod 1000000007
typedef long long lld;
lld a, b, sum;
lld exp(lld a, lld b){
if(b==0)return 1;
lld k=exp(a, b/2);
k=(k*k)%mod;
if(b%2)k=(k*a)%mod;
return k;
}
int n, k;
lld p, q, pq, mpq, dy[111], re;
int main(){
int n, i;
scanf("%lld%lld%d%d", &p, &q, &n, &k);
pq = q*exp(p,mod-2)%mod, mpq = (mod-pq)%mod;
dy[1]=1;
for(i=1; i<n; i++)dy[i+1] = (dy[i] + mpq*dy[i-1]%mod)*exp(1+mpq, mod-2)%mod;
dy[1] = exp(dy[n],mod-2);
for(i=1; i<n; i++)dy[i+1] = (dy[i] + mpq*dy[i-1]%mod)*exp(1+mpq, mod-2)%mod;
printf("%lld", dy[k]);
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |