Cod sursa(job #505948)
| Utilizator | Data | 4 decembrie 2010 15:55:00 | |
|---|---|---|---|
| Problema | Pascal | Scor | 20 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.47 kb |
#include<stdio.h>
FILE *fin,*fout;
long long a[2500002],i,j,nr,d,r;
int main(){
fin=fopen("pascal.in","r");
fout=fopen("pascal.out","w");
//ftest=fopen("test.out","w");
fscanf(fin,"%lld %lld",&r,&d);
a[0]=1;
a[1]=r;
for(j=1;j<=(r-1)/2;j++){
// fprintf(ftest,"%lld j=%lld ",a[j],j);
if(a[j]%d==0)
nr++;
a[j+1]=a[j]*(r-j)/(j+1);
}
nr=nr*2;
if(r%2==0 && a[r/2]%d==0)
nr++;
fprintf(fout,"%lld",nr);
fclose(fin);
fclose(fout);
return 0;}