Pagini recente » Cod sursa (job #206353) | Cod sursa (job #1286704) | Cod sursa (job #988593) | Cod sursa (job #684571) | Cod sursa (job #704148)
Cod sursa(job #704148)
#include <iostream>
#include <fstream>
#include <time.h>
using namespace std;
int v1[5000069],v2[5000069];
int main()
{
ifstream in("pascal.in");
ofstream out("pascal.out");
int D,R;
in>>R>>D;
int i,j,nr=0;
if (R<=1)
out<<-1;
else
{
v1[1]=1;
v2[1]=1;
v2[2]=1;
i=1;
while (i<=R)
{
i++;
if (i%2==0)
{
for (j=1;j<=i+1;j++)
v1[j]=(v2[j]+v2[j-1])%D;
}
else
{
for (j=1;j<=i+1;j++)
v2[j]=v1[j]+v1[j-1]%D;
}
}
if (R%2==0)
for (i=1;i<=R;i++)
if (v2[i]%D==0)
nr++;
else
for (i=1;i<=R;i++)
if (v1[i]%D==0)
nr++;
out<<nr;
}
return 0;
}