コード投稿テスト

//#define LOCAL
 
#include <fstream>
#include <iostream>
#include <cmath>
#include <algorithm>
#include <vector>
#include <map>
#include <queue>
#include <cstring>
#include <climits>
#include <set>
 
//#define int long long
//typedef long long ll;
using ll = long long;
using R = double;
 
//#define rep(i,n) for(int i=0; i<(n); i++)
#define FOR(i,bg,ed) for(ll i=(bg);i<(ed);i++)
#define REP(i,n) FOR(i,0,n)
 
#define MOD 1000000007
 
using namespace std;
 
typedef vector<int> V;
typedef vector<V> VV;
 
 
 
signed main()
{
    int N;
    string S;
 
    cin >> N;
    cin >> S;
    bool update = true;
    while (update) {
        update = false;
        int open = 0;
        REP(i,S.length()) {
            if (S[i] == '(') {
                open++;
            } else {
                open--;
                if (open < 0) {
                    S = '(' + S;
                    update = true;
                    break;
                }
            }
        }
    }
 
    update = true;
    while (update) {
        update = false;
        int close = 0;
        for (int i=S.length()-1; i>=0; i--) {
            if (S[i] == ')') {
                close++;
            } else {
                close--;
                if (close < 0) {
                    S = S + ')';
                    update = true;
                    break;
                }
            }
        }
    }
 
    cout << S << endl;
 
    return 0;
}

今後、こんな感じで競技プログラミングで書いたソースコードを貼っていくかもしれません。