Pagini recente » Cod sursa (job #3213379) | Cod sursa (job #407236) | Cod sursa (job #802010)
Cod sursa(job #802010)
#include<cstdio>
#include<cstdlib>
#include<ctime>
long long v[50005];
char p[50005];
int n;
int rnd=1;
int x=1103515245;
int y=12345;
inline int randn()
{
rnd=(rnd*x+y)%n;
return rnd;
}
int main()
{
srand (time (NULL));
freopen ("semne.in","r",stdin);
freopen ("semne.out","w",stdout);
long long s,c=0;
scanf ("%d%lld",&n,&s);
for(int i=0;i<n;i++){
scanf ("%lld",v+i);
if(c<s)
c+=v[i],p[i]='+';
else
c-=v[i],p[i]='-';
}
while(s!=c){
int r=randn();
if(c<s&&p[r]=='-')
c+=v[r]*2,p[r]='+';
else if(c>s&&p[r]=='+')
c-=v[r]*2,p[r]='-';
}
// for(int i=0;i<n;i++)
puts (p);
return 0;
}