原题链接
题意
构造出n个长度为 2?n2 * n2?n 的合法括号序列、
思路
按这种方式模拟即可。
详情见代码。
代码
#include<bits/stdc++.h>
using namespace std;
map<int, int> f;
int main()
{
int t;cin >> t;while (t -- ){
int n;cin >> n;for (int j = 1; j <= n; j ++ ){
f[n] ++;for (int i = 1; i <= f[n]; i ++ ) cout << "(";for (int i = 1; i <= f[n]; i ++ ) cout << ")";for (int i = 1; i <= n - f[n]; i ++ ) cout << "()";cout << endl;}f[n] = 0;}return 0;
}
总结
一开始没有看懂题意,也没找到规律,所以不会写,看了一眼题解,我真菜。