Pagini recente » Cod sursa (job #851000) | Cod sursa (job #1033815) | Cod sursa (job #2966833) | Cod sursa (job #1849041) | Cod sursa (job #270635)
Cod sursa(job #270635)
#include<fstream.h>
ifstream f ("semne.in");
ofstream g ("semne.out");
long int n,s,sol[5000],v[50001],suma=0;
int terminat;
void afiseaza()
{
if(suma==s){terminat=1;
for(int i=1;i<=n;i++) {if(sol[i]==0) g<<"-";
else g<<"+";} }
}
void back(int k)
{
if(k==n+1) afiseaza();
else
if(terminat==0){
for(int i=0;i<=1;i++)
{ sol[k]=i;
if(sol[k]==0) suma-=v[k];
else suma+=v[k];
back(k+1);
if(sol[k]==0) suma+=v[k];
else suma-=v[k]; }
}
}
int main()
{
f>>n;
f>>s;
for(int i=1;i<=n;i++)
{
f>>v[i];
} terminat=0;
back(1);
return 0;
}