📄 浙大1016(ac).cpp
字号:
#include<stdio.h>
int main()
{
int p[20],w[20],i,sign,a,b;
scanf("%d",&a);
for(;a>0;a--)
{
scanf("%d",&b);
for(i=0;i<b;i++)
{
scanf("%d",&p[i]);
}
for(i=b-1;i>0;i--)
{
p[i]-=p[i-1];//先做差存入p队列
}
for(i=0;i<b;i++)
{
if(p[i]!=0)
{
w[i]=1;//如果差不为0,说明此)与前一个)之间有至少一个(,所以只含一对
p[i]-=1;
}
else
{
sign=i;
while(p[sign]==0)//直到前一个不为0的差
sign--;
w[i]=i-sign+1;
p[sign]-=1;
}
}
for(i=0;i<b-1;i++)
{
printf("%d ",w[i]);
}
printf("%d\n",w[b-1]);
}
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -