zoukankan      html  css  js  c++  java
  • 关于括号的简单模拟题

    description

    给定一个括号字符数组S,S可以用两个整数数组P和W来描述,其中:
    
    数组P中的元素Pi定义为:第i个右括号前面有Pi个左括号;
    
    数组W中的元素Wi定义为,第i个右括号和其配对的左括号之间所包含的完整的括号的对数。
    
    现在给你P数组,让你求出该字符数组S所对应的W数组。
    
    比如下面这个例子 
    
    	S		(((()()())))
    
    	P	         4 5 6666
    
    	W  	         1 1 1456
    

    input

    输入第一行是一个整数t (1 <= t <= 10), 表示有t组测试数据。每组数据第一行是一个整数n (1 <= n <= 20), 然后是P数组中的n个元素。

    output

    对于输入的每一个P数组,输出其对应的W数组

    sample_input

    2
    6
    4 5 6 6 6 6
    9 
    4 6 6 6 6 8 9 9 9

    sample_output

    1 1 1 4 5 6
    1 1 2 4 5 1 1 3 9

    #include <stdio.h>
    #include <stdlib.h>

    int main()
    {
      int t,n,i,k;
      int a[20],b[20];
      scanf("%d",&t);
      while(t--)
     {
        scanf("%d",&n);
        for(i=1;i<=n;i++)
        scanf("%d",&a[i]);
        b[1]=1;
        for(i=2;i<=n;i++)
      {
        if(a[i]!=a[i-1])
        b[i]=1;
        else
       {
           k=i-1;
            while(a[i]-a[k]<i-k&&k>0)
            k--;
          b[i]= i-k;
       }
    }
        for(i=1;i<=n;i++)
        printf("%d ",b[i]);
        printf(" ");
     }
      return 0;
    }

  • 相关阅读:
    REP开发技巧
    css grid栅格布局
    flex学习, 尝试布局一个计算器
    sublime text html插件emmet
    flex布局
    SQL Server为字段添加默认值
    windows和linux文件输
    python eric6 IDE
    git撤销修改
    pyQt5
  • 原文地址:https://www.cnblogs.com/chen9510/p/4522721.html
Copyright © 2011-2022 走看看