Cod sursa(job #760142)
| Utilizator | Data | 20 iunie 2012 13:06:14 | |
|---|---|---|---|
| Problema | 1-sir | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <iostream>
#include <fstream>
#include <cstdlib>
#define MOD 194767
using namespace std;
int n,s,dp[2][300],smax;
int main()
{
ifstream f("1sir.in");
ofstream g("1sir.out");
f>>n>>s;
smax=(n*(n-1))/2;
if(abs(s)>smax) {
g<<"0";
return 0;
}
dp[1][0]=1;
for(int i=2; i<=n; ++i) for(int j=0; j<=smax; ++j) {
dp[i&1][j]=dp[(i&1)^1][j+i-1]+dp[(i&1)^1][abs(j-i+1)];
if(dp[i&1][j]>=MOD) dp[i&1][j]-=MOD;
}
g<<dp[n&1][s];
return 0;
}
