試了無數種解法,但一直都TLE
以下是我寫出來最快的程式碼,已經比一開始快很多了,但還是TLE@@
#include <bits/stdc++.h>
using namespace std;
int n;
string ans;
void dfs(string s, int l, int r){
if(r == n){
ans += s + '\n';
return;
}
if(l < n) dfs(s + "(", l + 1, r);
if(l > r) dfs(s + ")", l, r + 1);
return;
}
int main(){
ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
while(cin >> n) dfs("", 0, 0);
cout << ans;
return 0;
}