Cod sursa(job #658328)

Utilizator ciuscatalincius catalin ciuscatalin Data 8 ianuarie 2012 16:28:40
Problema 1-sir Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include<fstream>
#define NMAX 300000
#define MOD 194767

using namespace std;

ifstream f("1-sir.in");
ofstream g("1-sir.out");

int a[2][NMAX], n, S;

void Citeste()
{
	f>>n>>S;
}

void Solve()
{
	int i, j, p=n*(n+1)/2, r;
	a[1][p]=1;
	for (i=2; i<=n; ++i)
	{
		r=n-i+1;
		for (j=-p; j<=p; ++j)
			if (a[1-(i%2)][j+p]!=0)
			{
				a[i%2][j-r+p]=(a[i%2][j-r+p]+a[1-(i%2)][j+p])%MOD;
				a[i%2][j+r+p]=(a[i%2][j+r+p]+a[1-(i%2)][j+p])%MOD;
				a[1-(i%2)][j+p]=0;
			}
	}
	g<<a[n%2][S+p]<<"\n";
}

int main()
{
	Citeste();
	
	Solve();
	
	f.close();
	g.close();
	return 0;
}