注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

ydc的博客

 
 
 

日志

 
 

CTSC2013 组合子逻辑 闲扯  

2014-03-15 22:07:29|  分类: ctsc |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
早就听说这题很水了……但我最后还是没有自己搞出来
果然最近状态太差了啊
不过CTSC2013的题就这么莫名其妙地弄完了……感觉补CTSC什么的真是摧残身心健康,还是赶快老老实实地去补NOI吧(不过如果去不成NOI就玩大了)
最后截图留念?CTSC2013 组合子逻辑 闲扯 - ydc - ydc的博客
 

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<algorithm>
#include<queue>
#define maxn 200010
using namespace std;
int n,a[maxn];
void read()
{
scanf("%d",&n);
for(int i=1;i<=n;++i)
scanf("%d",a+i);
}
int Greedy()
{
if(n==1)
return 0;
if(a[1]==1)
return -1;
priority_queue<int> Q;
int rest=a[1]-1,ans=1;
for(int i=2;i<=n;++i)
{
if(rest)
--rest;
else if(Q.empty()||Q.top()==1)
return -1;
else
rest=Q.top()-2,Q.pop(),++ans;
Q.push(a[i]);
}
return ans;
}
int main()
{
int T;
for(scanf("%d",&T);T;--T)
{
read();
printf("%d\n",Greedy());
}
return 0;
}



  评论这张
 
阅读(480)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017