Pagini recente » Cod sursa (job #2702900) | Cod sursa (job #2718496) | Cod sursa (job #2364821) | Cod sursa (job #1472329) | Cod sursa (job #2203241)
#include <iostream>
#include <fstream>
#define MAX 2500010
using namespace std;
typedef long long ll;
int r,d,ii,ia,ans;
int psc[2][MAX];
int main()
{
ifstream f ("pascal.in");
ofstream g ("pascal.out");
f>>r>>d;
psc[0][0]=psc[1][1]=1;
for(int i=1;i<=r;i++){
ia=i%2,ii=1-ia;
for(int j=1;j<=i/2;j++)psc[ia][j]=(psc[ii][j-1]+psc[ii][j])%d;
}
for(int i=0;i<=r/2;i++)
ans+=(psc[r%2][i]==0);
ans*=2;
if(r%2==0)ans-=(psc[r%2][r/2]==0);
g<<ans;
f.close ();
g.close ();
return 0;
}