描述

CTG(Cun Tou Gaming) 是我校的一支 LOL 战队,他们参加比赛总是可以拿到冠军,因为每次都只有他们一支队伍参赛,所以只需要去签个到就可以直接夺冠并领取奖金。现在有  n 场比赛可以让他们选择,每场比赛都有各自的截止日期  d 和奖金  r ,而 CTG 战队必须在截止日期之前(包括截止日期当天)去参赛才可以拿到奖金。由于签到是一项很辛苦的工作所以战队一天只能参加一场比赛。现在要你设计出一种参赛方案,使他们可以拿到最多的奖金。

Input

有多组样例,第一行一个整数  T(T≤10) ,表示  T 组样例,对于每组样例:

第一行给出一个整数  n 表示有    n(n≤105) 场比赛可以参加。

接下来的  n 行,每行由  d 和  r 组成    (d,r≤109) ,分别表示截止日期和奖金数。

Output

输出  T 行。

每行即为该组测试中可以拿到的最多奖金数,保证答案在long long int的范围内。

Examples

Input

2
3
2 10
2 15
3 20
3
2 10
1 50
1 40

Output

45
60

这题就是我在http://www.cnblogs.com/dilthey/p/7859007.html里说的那道题目。

AC代码:

#include<cstdio>
#include<queue>
#include<algorithm>
using namespace std;
struct Game{
int d,r;
bool operator < (const Game& oth)const{return oth.r<r;}
}game[+];
bool cmp(Game a,Game b){return a.d<b.d;}
int n;
int main()
{
int t;
scanf("%d",&t);
while(t--)
{
scanf("%d",&n);
for(int i=;i<n;i++) scanf("%d%d",&game[i].d,&game[i].r);
sort(game,game+n,cmp);
//for(int i=0;i<n;i++) printf("%d %d\n",game[i].d,game[i].r); priority_queue<Game> heap;
for(int i=;i<n;i++)
{
if(game[i].d>heap.size()) heap.push(game[i]);
else
{
Game t=heap.top();
if(game[i].r>t.r)
{
heap.pop();
heap.push(game[i]);
}
}
} long long ans=;
while(!heap.empty())
{
//printf("%d %d\n",heap.top().d,heap.top().r);
ans+=heap.top().r;
heap.pop();
}
printf("%lld\n",ans);
}
}

附测试数据:

------Input------
8
3
2 10
2 15
3 20
3
2 10
1 50
1 40
7
4 20
2 60
4 70
3 40
1 30
4 50
6 10
2000
690 129437
444 236120
510 13552
487 376961
8 135813
576 117668
809 256728
790 282625
950 397291
831 46129
621 364410
47 314380
589 343421
907 243865
393 347616
531 365208
725 111070
20 66761
265 353077
767 289700
198 157768
629 101735
634 170788
392 93341
791 289334
259 24363
514 183483
249 342201
379 342490
450 25143
634 106233
11 382625
735 289909
954 206382
691 298898
545 332033
222 100879
506 81493
23 347615
310 35 ------Answer-----
45
60
230
299340856
4706131694
298231962423
3417359679513
4671715304676

江南大学第三届程序设计竞赛K题 - Cun Tou Gaming - [贪心+堆]的更多相关文章

  1. ACM学习历程—SNNUOJ 1116 A Simple Problem(递推 && 逆元 && 组合数学 && 快速幂)(2015陕西省大学生程序设计竞赛K题)

    Description Assuming a finite – radius “ball” which is on an N dimension is cut with a “knife” of N- ...

  2. 江西财经大学第一届程序设计竞赛 G题 小Q的口袋校园

    链接:https://www.nowcoder.com/acm/contest/115/G来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言65536 ...

  3. angry_birds_again_and_again(2014年山东省第五届ACM大学生程序设计竞赛A题)

    http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=2877 题目描述 The problems ca ...

  4. ZZUOJ-1195-OS Job Scheduling(郑州大学第七届ACM大学生程序设计竞赛E题)

    1195: OS Job Scheduling Time Limit: 2 Sec  Memory Limit: 128 MB Submit: 106  Solved: 35 [id=1195&quo ...

  5. 湖南程序设计竞赛赛题总结 XTU 1237 Magic Triangle(计算几何)

    这个月月初我们一行三人去湖南参加了ccpc湖南程序设计比赛,虽然路途遥远,六月的湘潭天气燥热,不过在一起的努力之下,拿到了一块铜牌,也算没空手而归啦.不过通过比赛,还是发现我们的差距,希望这几个月自己 ...

  6. CSU 1328 近似回文词(2013湖南省程序设计竞赛A题)

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1328 解题报告:中文题题意就不说了.还好数据不大,只有1000,枚举回文串的中心位置,然 ...

  7. 江西财经大学第一届程序设计竞赛 H题 求大数的阶乘

    链接:https://www.nowcoder.com/acm/contest/115/H 来源:牛客网 晚上,小P喜欢在寝室里一个个静静的学习或者思考,享受自由自在的单身生活. 他总是能从所学的知识 ...

  8. ZOJ 4100 浙江省第16届大学生程序设计竞赛 A题 Vertices in the Pocket 线段树+并查集

    正赛的时候完全没看这个题,事后winterzz告诉我他想出来的解法. 首先题意是给出n个点,m次操作. 操作有一种是连接两个点,另一种是求此时再为这个图连k条边,最少和最多能有几个联通块. 最少的求法 ...

  9. 2012年湖南省程序设计竞赛E题 最短的名字

    题目链接:http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1115 解题报告:输入n个字符串,让你求出可以用来区别这些字符串的最少的前缀总共有多少个字 ...

随机推荐

  1. c#系统消息类封装

    今天封装了一个返回json的消息类 using System; using System.Collections.Generic; using System.Linq; using System.Te ...

  2. Hadoop教程(五)Hadoop分布式集群部署安装

    Hadoop教程(五)Hadoop分布式集群部署安装 1 Hadoop分布式集群部署安装 在hadoop2.0中通常由两个NameNode组成,一个处于active状态,还有一个处于standby状态 ...

  3. hibernate4.3 无法获取数据库最新值

    在用ssh框架的时候遇到一个问题(hibernate版本号4.3) 问题描写叙述:web端和应用程序都能够读写数据库.当应用程序改动数据库后.hibernate无法读取最新值,读出来的一直都是旧数据. ...

  4. mongodb 在 Ubuntu系统上的安装及卸载

    mongodb官网 The mongodb-org-server package provides an initialization script that starts mongod with t ...

  5. Extjs定义的Fckeditor控件

    Ext.namespace('CRM.Panels'); //Ext.BoxComponent 这里继承是参考的Ext.form.Field CRM.Panels.Fckeditor = Ext.ex ...

  6. Robot Framework进行web ui自动化测试,浏览器配置说明

    转载请注明出处,谢谢: chrome浏览器: 1.从如下地址下载与本地浏览器版本号一致的chromedriver.exe驱动文件: http://chromedriver.storage.google ...

  7. Explaining Delegates in C# - Part 2 (Events 1)

    In my previous post, I spoke about a few very basic and simple reasons of using delegates - primaril ...

  8. hydra 及相关示例

    http://www.cnblogs.com/mchina/archive/2013/01/01/2840815.html https://www.thc.org/thc-hydra/ 语法 # hy ...

  9. Oracle的闪回技术--闪回已删除的表

    注意闪回技术只能保护非系统表决空间中的表,而且表空间必须本地管理, 外键将不可以被恢复, 索引和约束的名字将会被命名为以BIN开头,由系统生成的名字 查看是否开启闪回: SQL> show pa ...

  10. [Ubuntu] 解决 pip 安装 lxml 出现 x86_64-linux-gnu-gcc 异常

    安装 pip : $ wget https://bootstrap.pypa.io/get-pip.py ... $ sudo python get-pip.py install 使用 pip 安装/ ...