Cod sursa(job #2164237)

Utilizator patcasrarespatcas rares danut patcasrares Data 12 martie 2018 22:20:40
Problema Semne Scor 25
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include<fstream>
#include<queue>
#define x first
#define y second
#define DN 50005
using namespace std;
ifstream fin("semne.in");
ofstream fout("semne.out");
int n,a[DN],t,poz;
long long s,sum;
char r[DN];
queue<pair<int,int> >q1;
queue<pair<int,int> >q2;
int main()
{
    fin>>n>>s;
    for(int i=1;i<=n;i++)
    {
        fin>>a[i];
        sum+=a[i];
        r[i]='+';
        q1.push({a[i],i});
    }
    while(sum!=s)
    {
        if(sum>s)
        {
            for(int i=1;i<=n;i++)
                if(r[i]=='+')
                {
                    sum-=2*a[i];
                    r[i]='-';
                    break;
                }
        }
        else
        {
            for(int i=1;i<=n;i++)
                if(r[i]=='-')
                {
                    sum+=2*a[i];
                    r[i]='+';
                    break;
                }
        }
    }
    for(int i=1;i<=n;i++)
        fout<<r[i];
}