Pagini recente » Cod sursa (job #2283538) | Cod sursa (job #2906387) | Cod sursa (job #899674) | Cod sursa (job #2309730) | Cod sursa (job #2339279)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("semne.in");
ofstream fout("semne.out");
bool ok;
int n, sum, nr, v[50002];
char semn[50002];
void calc(int poz) {
if(sum != nr) {
while(poz > 0 && !ok) {
semn[poz] = '-';
nr -= v[poz] * 2;
if(nr >= sum)
calc(poz - 1);
if(!ok) {
semn[poz] = '+';
nr += v[poz]*2;
poz--;
}
}
}
else
ok = 1;
}
int main()
{
fin >> n >> sum;
for(int i = 1; i <= n; i++) {
fin >> v[i];
nr += v[i];
semn[i] = '+';
}
calc(n);
for(int i = 1; i <= n; i++)
fout << (char)semn[i];
return 0;
}