Pagini recente » Cod sursa (job #2779177) | Cod sursa (job #1543795) | Cod sursa (job #3181300) | Cod sursa (job #589771) | Cod sursa (job #802008)
Cod sursa(job #802008)
#include<cstdio>
#include<cstdlib>
#include<ctime>
long long v[50005];
char p[50005];
int n;
int rnd=1;
int x=124314;
int y=14515;
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;
}