Cod sursa(job #2622101)

Utilizator anabatAna Batrineanu anabat Data 31 mai 2020 14:41:57
Problema 1-sir Scor 0
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.65 kb
#include <stdio.h>
#include <stdlib.h>

#define NMAX 256
#define SMAX 32896
#define MOD 194767

int d[NMAX+1][SMAX+1]; ///nr de siruri de lung i si de suma j

int main()
{
  FILE *fin,*fout;
  fin=fopen("1-sir.in","r");
  fout=fopen("1-sir.out","w");

  int n,S,i,j;
  fscanf(fin,"%d%d",&n,&S);
  if(S<0){ ///-S si S simetrice
    S*=-1;
  }
  d[1][0]=1;
  for(i=2;i<=n;i++){
    for(j=1;j<=n*(n+1)/2;j++){
      if(d[i-1][j-(i-1)]+d[i-1][j+(i-1)]>MOD){
        d[i][j]=d[i-1][j-(i-1)]+d[i-1][j+(i-1)]-MOD;
      }
      else
        d[i][j]=d[i-1][j-(i-1)]+d[i-1][j+(i-1)];
    }
  }
  fprintf(fout,"%d",d[n][S]);
  return 0;
}