Cod sursa(job #459466)

Utilizator cescC.Fabregas cesc Data 29 mai 2010 21:15:50
Problema 1-sir Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
#define SMAX 70000
#define INF 33000
#define max_N 260
#define D(pas, sum) ord[pas][sum + INF] 
#define P 194767

using namespace std;

int N, S, ord[2][SMAX], sc[max_N], i, j, x, y;

ifstream fin("1-sir.in");
ofstream fout("1-sir.out");

int main()
{
	fin >> N >> S;
	sc[1] = 0;
	for(i = 2; i <= N; i ++)
		sc[i] = sc[i - 1] + i - 1;
	
	memset(ord, 0, sizeof(ord));
	x = 0;
	D(0, 0) = 1;
	for(i = 2; i <= N; i ++)
	{
		y = x;
		x = 1 - x;
		for (j = 0; j <= sc[i]; j++)
		{
			D(x, j) = (D(y, j - i + 1) + D(y, j + i - 1)) % P;
			D(x, -j) = D(x, j);
		}
		
	}
	
	fout << D(x, S);
	return 0;
}