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 ...
随机推荐
- akoj-1048-求某一整数序列的全排列问题
求某一整数序列的全排列问题 Time Limit:1000MS Memory Limit:65536K Total Submit:35 Accepted:16 Description 现有一整数序列 ...
- Ceph的Block分析
一个块是一个连续的字节序列(例如一个512字节的连续数据是一个块).基于块的存储接口通常是旋转介质,例如磁盘.光盘.软盘等.块设备接口的普及使得可以用虚拟的块设备成为和大容量数据存储系统交互的接口,如 ...
- java 将GBK编码文件转为UTF-8编码
需要commons-io-2.0.1.jar public class Test { public static void main(String args[]) throws IOException ...
- Spring AOP 本质(4)
这一主要看看Spring AOP是如何实现通知包围的. Spring AOP包围通知在功能上和前置通知加后置通知类似,但还是有区别的:包围通知可以修改返回值,还可以阻止.替换目标方法的执行. ...
- 通过jstack定位在线运行java系统故障_案例1
问题描述: 在一个在线运行的java web系统中,会定时运行一个FTP上传的任务,结果有一天发现,文件正常生成后却没有上传. 问题初步分析: 1.查看日志文件 发现这个任务只打印了开始进入FTP处理 ...
- C++的构造函数总结
构造函数是C++的一个很基础的知识点,在平时编程的时候,相信大家都很熟悉,虽然比较基础,但是细究下来,还是有不少细节需要注意.这篇文章主要总结C++构造函数需要注意一些细节,一方面,可以帮助下大家巩固 ...
- Uboot与Linux之间的参数传递
U-boot会给Linux Kernel传递很多参数,如:串口,RAM,videofb等.而Linux kernel也会读取和处理这些参数.两者之间通过struct tag来传递参数. U-boot把 ...
- sem_timedwait的用法
#include <semaphore.h> int sem_timedwait(sem_t *sem, const struct timespec *abs_timeout); Link ...
- UGUI实现摇杆(模仿太极熊猫)
核心代码: using UnityEngine; using System.Collections; using UnityEngine.UI; public delegate void Joysti ...
- Apache POI组件操作Excel,制作报表(一)
Apache的POI组件是Java操作Microsoft Office办公套件的强大API,其中对Word,Excel和PowperPoint都有支持,当然使用较多的还是Excel,因为Word和Po ...