Cod sursa(job #2102857)
| Utilizator | Data | 9 ianuarie 2018 15:50:18 | |
|---|---|---|---|
| Problema | 1-sir | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.54 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("1-sir.in");
ofstream fout("1-sir.out");
const int mod=194767;
int dp[200000];
int n, s;
int main()
{
fin>>n>>s;
int nr=n*(n-1)/2;
if(s>nr || s<-nr)
{
fout<<"0\n";
return 0;
}
dp[nr+100000]=1;
for(int i=2; i<=n; ++i)
{
for(int j=-nr; j<=nr; ++j)
{
dp[j+100000]=(dp[j+100000]+dp[j+2*(n-i+1)+100000])%mod;
}
}
fout<<dp[s+100000]<<"\n";
return 0;
}
