Pagini recente » Cod sursa (job #1229117) | Cod sursa (job #844574)
Cod sursa(job #844574)
#include<iostream>
#include<fstream>
#include<time.h>
#include<stdlib.h>
using namespace std;
#define NMAX 50001
int v[NMAX],semn[NMAX];
int main ()
{
int i,n,sum,s,x;
ifstream f("semne.in");
ofstream g("semne.out");
f>>n>>s;
sum=0;
for(i=1;i<=n;i++) {
f>>v[i];
if(sum<=s)
sum=sum+v[i];
else {
semn[i]=1;
sum=sum-v[i];
}
}
f.close();
srand(time(NULL));
while(sum!=s)
if(sum<s) {
x=rand()%(n)+1;
while(semn[x]==0)
x=rand()%(n)+1;
semn[x]=0;
sum=sum+2*v[x];
}
else {
x=rand()%(n)+1;
while(semn[x]==1)
x=rand()%(n)+1;
semn[x]=1;
sum=sum-2*v[x];
}
for(i=1;i<=n;i++)
if(semn[i]==0)
g<<'+';
else g<<'-';
g<<'\n';
g.close();
return 0;
}