1774A - Add Plus Minus Sign - CodeForces Solution


constructive algorithms math *800

Please click on ads to support us..

Python Code:

t = int(input())
for _ in range(t):
    n = int(input())
    s = input()
    v = 0
    res = ""
    val = False
    for i in range(1, n):
        if s[i] == '0':
            res += "-"
            continue
        elif not val:
            res += "-"
        else:
            res += "+"
        val = not val

    print(res)

C++ Code:

#include<bits/stdc++.h>
using  namespace std;
typedef long long int ll;
typedef unsigned long long int ull;
#define _io ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
int main()
{
    _io;
    ll T;
    cin>>T;
    while(T--)
    {
        ll n;
        cin>>n;
        string s;
        cin>>s;
        int sum=0;
        string ans="";
        for(int i=0;i<n;i++)
        {
            if(sum==0){ans=ans+'+';sum=sum+int(s[i])-int('0');}
            else {ans=ans+'-';sum=sum-(int(s[i])-int('0'));}
            //cout<<sum<<endl;
        }
        cout<<ans.substr(1,ans.size())<<endl;
    }
}


Comments

Submit
0 Comments
More Questions

131C - The World is a Theatre
1696A - NIT orz
1178D - Prime Graph
1711D - Rain
534A - Exam
1472A - Cards for Friends
315A - Sereja and Bottles
1697C - awoo's Favorite Problem
165A - Supercentral Point
1493A - Anti-knapsack
1493B - Planet Lapituletti
747B - Mammoth's Genome Decoding
1591C - Minimize Distance
1182B - Plus from Picture
1674B - Dictionary
1426C - Increase and Copy
520C - DNA Alignment
767A - Snacktower
1365A - Matrix Game
714B - Filya and Homework
31A - Worms Evolution
1691A - Beat The Odds
433B - Kuriyama Mirai's Stones
892A - Greed
32A - Reconnaissance
1236D - Alice and the Doll
1207B - Square Filling
1676D - X-Sum
1679A - AvtoBus
1549A - Gregor and Cryptography