GTW likes gt(BC 模拟 or 优先队列)
GTW likes gt
从前,有nnn只萌萌的GT,他们分成了两组在一起玩游戏。他们会排列成一排,第iii只GT会随机得到一个能力值bib_ibi。在第iii秒的时候,第iii只GT可以消灭掉所有排在他前面的和他不是同一组的且能力值小于他的GT。
为了使游戏更加有趣,GT的首领GTW会发功m次,第i次发功的时间为ci,则在第ci秒结束后,b1,b2,...,bci都会增加1。
现在,GTW想知道在第nnn秒之后,会有几只GT存活下来。
总共TTT行,第iii行表示第iii组数据中,GT存活的个数。
1 //测试数据个数
4 3 //n个gtm,m次发功
0 3
1 2
0 3
1 1
1 //发功时间
3
4
3
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
struct gt
{
int pos,d;
int b;
}g[+];
int c[+];
int n,m;
int main()
{
int i,j;
int T;
freopen("in.txt","r",stdin);
cin>>T;
while(T--)
{
int co=;
scanf("%d%d",&n,&m);
for(i=;i<n;i++) scanf("%d%d",&g[i].pos,&g[i].b);
for(i=;i<m;i++) scanf("%d",&c[i]);
sort(c,c+m);
for(i=;i<n;i++)
g[i].d=;
for(i=;i<m;i++)
{
int t=c[i]-;
for(int p=;p<=t;p++)
g[p].b++;
}
for(i=;i<n;i++)
{
for(j=;j<i;j++)
{
if(g[j].d==&&g[j].pos!=g[i].pos&&g[i].b>g[j].b)
{
g[j].d=;
co++;
}
}
}
printf("%d\n",n-co);
}
}
应大神的的代码:
#include <iostream>
#include <queue>
#include <cstring>
#define for1to(i,n) for(int i=1;i<=n;i++)
#define forto(i,n) for(int i=0;i<n;i++)
#define CLR(x) memset(x,0,sizeof(x))
using namespace std;
int a[],b[];
int c[];
int main()
{
ios_base::sync_with_stdio(false);
int Total;
cin>>Total;
for1to(Case,Total)
{
priority_queue<int,vector<int>,greater<int> > pq1;
priority_queue<int,vector<int>,greater<int> > pq0;
int n,m;
cin>>n>>m;
forto(i,n)
cin>>a[i]>>b[i];
CLR(c);
forto(i,m)
{
int t;
cin>>t;
t--;
c[t]++;
}
int time=;
int nres=;
for(int i=;i<n;i++)
{
b[i]-=time;
time+=c[i];
if (a[i]==)
{
while(!pq1.empty()&&pq1.top()<b[i])
{
nres++;
pq1.pop();
}
pq0.push(b[i]);
}
else
{
while(!pq0.empty()&&pq0.top()<b[i])
{
nres++;
pq0.pop();
}
pq1.push(b[i]);
}
}
cout<<n-nres<<endl;
}
return ;
}
GTW likes gt(BC 模拟 or 优先队列)的更多相关文章
- GTW likes math(BC 1001)
GTW likes math Accepts: 472 Submissions: 2140 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 1 ...
- hdu-5596 GTW likes gt(模拟+优先队列)
题目链接: GTW likes gt Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Othe ...
- HDU5597/BestCoder Round #66 (div.2) GTW likes function 打表欧拉函数
GTW likes function Memory Limit: 131072/131072 K (Java/Others) 问题描述 现在给出下列两个定义: f(x)=f_{0}(x)=\ ...
- HDU 5596/BestCoder Round #66 (div.2) GTW likes math 签到
GTW likes math Memory Limit: 131072/131072 K (Java/Others) 问题描述 某一天,GTW听了数学特级教师金龙鱼的课之后,开始做数学<从自主 ...
- HDU 5597 GTW likes function 打表
GTW likes function 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5596 Description Now you are give ...
- HDU 5596 GTW likes gt 倒推
GTW likes gt 题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=5596 Description Long long ago, there w ...
- hdu-5597 GTW likes function(欧拉函数+找规律)
题目链接: GTW likes function Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131072/131072 K (J ...
- GTW likes math(简单数学)
GTW likes math Accepts: 472 Submissions: 2140 Time Limit: 2000/1000 MS (Java/Others) Memory Limi ...
- HDU 5596 ——GTW likes gt——————【想法题】
GTW likes gt Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others)To ...
随机推荐
- replace 全局替换 和 数组去空
<script> /*var str = 'a,b,dhhhh,d'; str = str.replace(/h/g,'j'); alert(str);*/ </script> ...
- #include<iostream>与#include<iostream.h>的区别
转载于祝长洋的BLOG:http://blog.sina.com.cn/s/blog_514b5f600100ayks.h ...
- BZOJ 1877 晨跑
http://www.lydsy.com/JudgeOnline/problem.php?id=1877 思路:拆点费用流,答案就是最大流量和最小费用. #include<algorithm&g ...
- Find out C++ Memory Usage in Code
You can use Microsoft Platform SDK functions to get the heap size at a specific point. If get the he ...
- 设置EntityFramework 在开发时自动更新数据库
1. NuGet 下载EntityFramework. 2. 定义Context 和 打开NuGet 命令 执行 Enable-Migrations , Libaray.DAL.Migrations. ...
- 常用监控SQL
1.---监控等待事件 select SESSION_ID,NAME,P1,P2,P3,WAIT_TIME,CURRENT_OBJ#,CURRENT_FILE#,CURRENT_BLOCK# ...
- Apache本地服务无法自启动问题解决
问题描述: Windows不能在本地计算机启动Apache2.有关更多信息,查阅系统事件日志.如果这是非Microsoft服务,请与服务厂商联系,并参考特定服务错误代码1. 解决方案: 1.检查Apa ...
- MySQL数据备份之mysqldump
mysqldump常用于MySQL数据库逻辑备份 1.各种用法说明 A. 最简单的用法: mysqldump -uroot -pPassword [database name] > [dum ...
- ios相册
1, 系统图片剪裁的问题 http://www.cnblogs.com/liulunet/archive/2013/01/19/2866399.html
- bootstrap 兼容IE8设置
<!--[if lt IE 9]> <script src="//cdn.bootcss.com/html5shiv/3.7.2/html5shiv.min.js" ...