AtCoder Beginner Contest 079 C - Train Ticket

atcoder.jp

#include <iostream>
#include <vector>
#include <string>
#include <cstring>
using namespace std;

typedef long long ll;
string S;
int N;
vector<string> fugou(3);
//-----------------------------------------------------------------
int main() {
    cin >> S;
    N = S.length();

    for (int i = 0; i < (1 << 3); i++) // 0 -> 7
    {
        int sum = S[0] - '0';
        for (int j = 0; j < 3; j++)
        {           
            // 1(+)の場合 
            if (i & (1 << j)) {
                sum += S[j + 1] - '0';
                fugou[j] = "+";
            }
            // 0(-)の場合
            else {
                sum -= S[j + 1] - '0';
                fugou[j] = "-";
            }           
        }
        if (sum == 7)
        {
            cout << S[0] << fugou[0] << S[1] << fugou[1] << S[2] << fugou[2] << S[3] << "=7" << endl;
            break;
        }
    }
}