Cod sursa(job #1866088)

Utilizator mjmilan11Mujdar Milan mjmilan11 Data 2 februarie 2017 17:14:40
Problema Semne Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <fstream>
#include <bitset>
#include <stdlib.h>
using namespace std;

#define Nmax 50002

ifstream fin("semne.in");
ofstream fout("semne.out");

int N, v[Nmax];
long long S,Now;
char s[Nmax];

void bkt(int poz)
{
    if(Now!=S){
        int i=poz;
    while(i>0){
        s[i]='-';
        Now-=2*v[i];
        if(Now>=S)
            bkt(i-1);

        s[i]='+';
        Now+=2*v[i];
        i--;
     }
    }
    else{
        fout << s+1;
        exit(EXIT_SUCCESS);
    }
}

int main()
{
    fin >> N >> S;
    for(int i=1;i<=N;++i){
        fin >> v[i];
        s[i]='+';
        Now+=v[i];
    }
    bkt(N);
    End:
    return 0;
}