Pagini recente » Cod sursa (job #1246524) | Cod sursa (job #2438217) | Cod sursa (job #445646) | Cod sursa (job #3206524) | Cod sursa (job #1649992)
#include <fstream>
#include <stdlib.h>
#include <bitset>
#define Nmax 5002
using namespace std ;
ifstream in ("semne.in");
ofstream out("semne.out");
int N , v[Nmax] ;
char s[Nmax] ;
long long S, Now ;
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{
out << s + 1 ;
exit(EXIT_SUCCESS);
}
}
int main (){
in >> N >> S ;
for( int i = 1 ; i <= N ; ++i ){
in >> v[i] ;
s[i] = '+';
Now += v[i] ;
}
bkt( N );
End:
return 0 ;
}