Pagini recente » Cod sursa (job #1619051) | Cod sursa (job #3293911) | Cod sursa (job #1344859) | Cod sursa (job #2727760)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("semne.in");
ofstream fout("semne.out");
typedef long long ll;
ll n, v[50005], s;
char rez[50005];
bool solve(ll sum, int n){
if(sum < s)
return false;
if(sum == s)
return true;
for(int i = n; i >= 1; --i){
rez[i] = '-';
if(solve(sum - 2 * v[i], i - 1))
return true;
rez[i] = '+';
}
return false;
}
int main()
{
fin >> n >> s;
ll sum = 0;
for(int i = 1; i <= n; ++i){
fin >> v[i];
sum += v[i];
rez[i] = '+';
}
solve(sum, n);
fout << (rez + 1) << '\n';
return 0;
}