Cod sursa(job #341019)

Utilizator ZethpixZethpix Zethpix Data 17 august 2009 12:45:15
Problema Semne Scor 60
Compilator cpp Status done
Runda Summer Camp #5 Marime 0.7 kb
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
FILE *f,*g;
long s,S,n,i,a[50002],sol[50002];
int main(){
	f=fopen("semne.in","r");
	g=fopen("semne.out","w");
	fscanf(f,"%ld%ld",&n,&S);
	for(i=1;i<=n;i++)
		fscanf(f,"%ld",&a[i]);
    srand(time(NULL));
	for(i=1;i<=n;i++)
		sol[i]=rand()%2;
	s=0;
	for(i=1;i<=n;i++)
		if(sol[i]==1)s+=a[i];
		else s-=a[i];
	int ok=1;
	do{
		i=rand()%n+1;
		if(sol[i]==0) s+=a[i];
		else s-=a[i];
		if(sol[i]==0) sol[i]=1;
		else sol[i]=0;
		if(sol[i]==0) s-=a[i];
		else s+=a[i];
		if(s==S)ok=0;
	}while(ok);
	for(i=1;i<=n;i++)
		if(sol[i]==0) fprintf(g,"-");
		else fprintf(g,"+");
	fprintf(g,"\n");
	fclose(f);
	fclose(g);
	return 0;
}