poj 1068
来源:互联网 发布:政府转移支付数据 编辑:程序博客网 时间:2024/06/15 04:54
#include <iostream>
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn=20+5;
const int maxn1=2000;
int a[maxn];
int b[maxn];
int s[maxn1]; //圆括号数组
int main()
{
int t;
while(scanf("%d",&t)==1&&t)
{
int n;
while(t--)
{
memset(s,0,sizeof(s));
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]); //input
s[a[i]+i]=2;
}
for(int i=0;i<n;i++)
{
int m=a[i]+i;
int ans=0;
for(int j=m;j>=0;j--)
{
if(s[j]!=2) ans++;
if(!s[j]) {
s[j]=1;
break;
}
}
b[i]=ans;
}
for(int i=0;i<n;i++)
printf("%d ",b[i]);
cout<<endl;
}
}
return 0;
}
#include<cstdio>
#include<cstring>
using namespace std;
const int maxn=20+5;
const int maxn1=2000;
int a[maxn];
int b[maxn];
int s[maxn1]; //圆括号数组
int main()
{
int t;
while(scanf("%d",&t)==1&&t)
{
int n;
while(t--)
{
memset(s,0,sizeof(s));
scanf("%d",&n);
for(int i=0;i<n;i++)
{
scanf("%d",&a[i]); //input
s[a[i]+i]=2;
}
for(int i=0;i<n;i++)
{
int m=a[i]+i;
int ans=0;
for(int j=m;j>=0;j--)
{
if(s[j]!=2) ans++;
if(!s[j]) {
s[j]=1;
break;
}
}
b[i]=ans;
}
for(int i=0;i<n;i++)
printf("%d ",b[i]);
cout<<endl;
}
}
return 0;
}
阅读全文
0 0
- POJ 1068
- POJ-1068
- poj 1068
- POJ 1068
- poj 1068
- POJ 1068
- POJ 1068
- poj 1068
- poj-1068
- poj 1068
- poj 1068
- poj 1068
- poj 1068
- poj 1068
- poj 1068
- POJ-1068
- poj 1068
- poj 1068
- java面试基础
- 鸭子类型
- “一切都是消息”--MSF(消息服务框架)之【发布-订阅】模式
- jsp+servlet实现验证码
- 排查 Azure 虚拟机的远程桌面连接问题
- poj 1068
- Js获取当前日期和操作方法
- 多线程编程:多线程并发制单的开发记录【一】
- PHP遍历目录函数总结
- vue过渡动画
- 使用 tmux 打造更强大的终端
- this关键字笔记
- UML关系-继承和泛化
- spring配置datasource三种方式