Pagini recente » Cod sursa (job #1800522) | Cod sursa (job #207361) | Cod sursa (job #2335927) | Cod sursa (job #355496) | Cod sursa (job #2692607)
#include <fstream>
using namespace std;
ifstream f("semne.in");
ofstream g("semne.out");
const int nmax=5*1e2+1;
int n;
char v[nmax];
long long a[nmax],suma,s;
bool solve(long long sum,int n)
{
if(sum<s)return false;
if(sum==s)return true;
for(int i=n;i>=0;i--)
{
v[i]='-';
if(solve(sum-2*a[i],i-1))return true;
v[i]='+';
}
return false;
}
int main()
{
f>>n>>s;
for(int i=0;i<n;i++)
{
f>>a[i];
suma+=a[i];
v[i]='+';
}
solve(suma,n-1);
g<<v<<"\n";
return 0;
}