zoukankan      html  css  js  c++  java
  • POJ 1068

    寒假集训小水题第一发

    题意:给你一个序列,代表的意思是第i个右括号前面有Si个左括号,问题是求第i 个右括号包含了几个完整的括号 。

    example:

    S		(((()()())))
    
    P-sequence 4 5 6666
    W-sequence 1 1 1456

    方法:先用给出的P序列把S还原出来,然后再用S求W,W的具体求解方法是从每个右括号往左找,直到左括号数目和右括号数目一致的时候,就是包含的括号数。

    AC代码:
    #include <iostream>
    #include <math.h>
    #include <stdio.h>
    #include <string.h>
    #include <queue>
    using namespace std;
    int main()
    {
        int T,n,s[200],su[200];
        char q[200];
        scanf("%d",&T);
        while(T--)
        {
            scanf("%d",&n);
            for(int i=0; i<n; i++)
            {
                scanf("%d",&s[i]);
            }
            int k=0;
            for(int i=0; i<s[0]; i++)
            {
                q[k++]='(';
            }
            q[k++]=')';
            for(int i=1; i<n; i++)
            {
                int k1=s[i]-s[i-1];
                while(k1--)
                {
                    q[k++]='(';
                }
                q[k++]=')';
            }
            int suk=0;
            for(int i=0; i<k; i++)
            {
                if(q[i]==')')
                {
                    int sum1=1;
                    int sum2=0;
                    for(int j=i-1; j>=0; j--)
                    {
                        if(sum1==sum2)
                        {
                            break;
                        }
                        if(q[j]==')')
                        {
                            sum1++;
                        }
                        else if(q[j]=='(')
                        {
                            sum2++;
                        }
                    }
                    su[suk++]=sum1;
                }
            }
            for(int i=0;i<suk;i++)
            {
                printf("%d",su[i]);
                if(i!=suk-1)
                {
                    printf(" ");
                }
                else
                {
                    printf("
    ");
                }
            }
        }
        return 0;
    }

     

  • 相关阅读:
    基于WINCE嵌入式系统的FM1702的读写器(2)
    WINCE 按键驱动编写
    WinCE内存调整
    USB模块
    网络模块
    wince6.0下ov9650的图像保存
    Windows CE内存泄漏
    MPEG4解码函数
    centos 7 gitlab安装 李刚
    docker 17.12.0ce 空间大小和容器大小限制修改 李刚
  • 原文地址:https://www.cnblogs.com/qioalu/p/5147585.html
Copyright © 2011-2022 走看看