标签:color 括号 cto += pac string ace pre col
用1代表左括号,0代表右括号。扫一遍,扫到0的时候,往前扫,直到在这个情况下0和1的个数相等,记录。
1 #include <iostream> 2 #include <cstdio> 3 #include <cmath> 4 #include <cstring> 5 #include <algorithm> 6 #include <queue> 7 #include <stack> 8 #include <vector> 9 using namespace std; 10 int main(int argc, char *argv[]) 11 { 12 int t,n,a[30],b[100],c[30]; 13 scanf("%d",&t); 14 while(t--) 15 { 16 scanf("%d",&n); 17 for(int i=1;i<=n;i++) 18 { 19 scanf("%d",&a[i]); 20 } 21 int ans=0;a[0]=0; 22 for(int i=1;i<=n;i++) 23 { 24 for(int j=ans;j<ans+a[i]-a[i-1];j++) 25 { 26 b[j]=1; 27 } 28 ans+=a[i]-a[i-1]; 29 b[ans++]=0; 30 } 31 int sum=0; 32 for(int i=0;i<ans;i++) 33 { 34 if(b[i]==0) 35 { 36 int s0,s1;s0=1;s1=0; 37 for(int j=i-1;j>=0;j--) 38 { 39 if(b[j]==0) 40 s0++; 41 else 42 s1++; 43 if(s0==s1) 44 { 45 c[sum++]=s0; 46 break; 47 } 48 } 49 } 50 } 51 for(int i=0;i<sum;i++) 52 { 53 printf("%d",c[i]); 54 if(i!=sum-1) 55 printf(" "); 56 } 57 printf("\n"); 58 59 } 60 return 0; 61 }
标签:color 括号 cto += pac string ace pre col
原文地址:https://www.cnblogs.com/huluxin/p/9768617.html