Pagini recente » Cod sursa (job #782787) | Cod sursa (job #3277281) | Cod sursa (job #1046650) | Cod sursa (job #827741) | Cod sursa (job #1417718)
#include <fstream>
#include <cstdlib>
#include <time.h>
using namespace std;
ifstream f ("semne.in");
ofstream g ("semne.out");
char sol[50005];
long long nr[50005];
int main()
{
srand (time (0));
long long n, s, curent = 0, poz;
f >> n >> s;
for (int i = 0; i < n; i ++)
{
f >> nr[i];
curent += nr[i];
sol[i] = '+';
}
while (curent != s)
{
poz = rand () % n;
if (sol[poz] == '+' && curent > s)
{
sol[poz] = '-';
curent -= 2 * nr[poz];
}
else if (sol[poz] == '-' && curent < s)
{
sol[poz] = '+';
curent += 2 * nr[poz];
}
}
g << sol;
f.close ();
g.close ();
return 0;
}