【题目链接】:http://codeforces.com/problemset/problem/749/D

【题意】



有n个人在竞价;

按照时间的顺序给出n次竞价(可能有一些人没有参加竞价);

每次竞价以竞价人的编号和竞价给出;

保证竞价严格递增;

且同一个人不会连续竞价两次;

现在,假设去掉某一些竞价的人;

问你最后谁是那个竞价成功的人?

如果去掉一些人之后,出现了某人连续竞价两次;

则取最小的价格(但要使得他依然能竞价成功);

每次输出winner和它的最小竞价;

【题解】



每个人的有用信息只有它的最高竞价(对于排名来说);

其他的都不重要的,因为去掉之后;

你的其他竞价都不存在了;

而最高竞价额才能影响某个人最后的排名;

则维护每个人的最高竞价;

如果删除了某个人只要删除它的最高竞价就好;

这样其他人的最高竞价还存着;

就能快速获取最高的那个竞价人是谁了;

用个map就能搞定;

然后获取第二大的人;

只要比第二大的人的最高竞价高,然后最小,就是答案了;

所以还需要记录每个人的所有竞价的价格,用于最后找最小的竞价;

查询大于某个价格且最小,用lower_bound就好;



【Number Of WA】



0



【完整代码】

#include <bits/stdc++.h>
using namespace std;
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
#define mp make_pair
#define pb push_back
#define fi first
#define se second
#define ms(x,y) memset(x,y,sizeof x)
#define Open() freopen("D:\\rush.txt","r",stdin)
#define Close() ios::sync_with_stdio(0),cin.tie(0) typedef pair<int, int> pii;
typedef pair<LL, LL> pll; const int dx[9] = { 0,1,-1,0,0,-1,-1,1,1 };
const int dy[9] = { 0,0,0,-1,1,-1,1,-1,1 };
const double pi = acos(-1.0);
const int N = 2e5+100; int n,a[N],b[N],mx[N],l[N];
map <int,int> dic;
vector <int> v[N]; int main()
{
//Open();
Close();//scanf,puts,printf not use
//init??????
cin >> n;
rep1(i,1,n)
{
int x,y;
cin >> x >> y;
mx[x] = y;
v[x].pb(y);
}
rep1(i,1,n)
if (mx[i])
dic[mx[i]] = i;
cin >> n;
dic[0] = 0;
rep1(i,1,n)
{
int k;
cin >> k;
rep1(j,1,k)
{
cin >> l[j];
if (mx[l[j]])
dic.erase(mx[l[j]]);
}
map<int,int>::iterator p = dic.end();
p--;
if (p==dic.begin())
cout <<"0 0"<<endl;
else
{
int id = p->se;
p--;
cout<<id<<' '<<*lower_bound(v[id].begin(),v[id].end(),p->fi)<<endl;
}
rep1(j,1,k)
if (mx[l[j]])
dic[mx[l[j]]] = l[j];
}
return 0;
}

【codeforces 749D】Leaving Auction的更多相关文章

  1. Codeforces 749D:Leaving Auction(set+二分)

    http://codeforces.com/contest/749/problem/D 题意:有几个人在拍卖场竞价,一共有n次喊价,有q个询问,每一个询问有一个num,接下来num个人从这次拍卖中除去 ...

  2. 【codeforces 415D】Mashmokh and ACM(普通dp)

    [codeforces 415D]Mashmokh and ACM 题意:美丽数列定义:对于数列中的每一个i都满足:arr[i+1]%arr[i]==0 输入n,k(1<=n,k<=200 ...

  3. 【45.65%】【codeforces 560B】Gerald is into Art

    time limit per test2 seconds memory limit per test256 megabytes inputstandard input outputstandard o ...

  4. 【33.33%】【codeforces 586D】Phillip and Trains

    time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...

  5. 【codeforces 707E】Garlands

    [题目链接]:http://codeforces.com/contest/707/problem/E [题意] 给你一个n*m的方阵; 里面有k个联通块; 这k个联通块,每个连通块里面都是灯; 给你q ...

  6. 【codeforces 707C】Pythagorean Triples

    [题目链接]:http://codeforces.com/contest/707/problem/C [题意] 给你一个数字n; 问你这个数字是不是某个三角形的一条边; 如果是让你输出另外两条边的大小 ...

  7. 【codeforces 709D】Recover the String

    [题目链接]:http://codeforces.com/problemset/problem/709/D [题意] 给你一个序列; 给出01子列和10子列和00子列以及11子列的个数; 然后让你输出 ...

  8. 【codeforces 709B】Checkpoints

    [题目链接]:http://codeforces.com/contest/709/problem/B [题意] 让你从起点开始走过n-1个点(至少n-1个) 问你最少走多远; [题解] 肯定不多走啊; ...

  9. 【codeforces 709C】Letters Cyclic Shift

    [题目链接]:http://codeforces.com/contest/709/problem/C [题意] 让你改变一个字符串的子集(连续的一段); ->这一段的每个字符的字母都变成之前的一 ...

随机推荐

  1. 【 ACM-ICPC 2018 沈阳赛区网络预赛 D】Made In Heaven

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 点可以重复走的k短路. [代码] #include <bits/stdc++.h> #define LL long lo ...

  2. CF449 C. Jzzhu and Apples

    /* http://codeforces.com/problemset/problem/449/C cf 449 C. Jzzhu and Apples 数论+素数+贪心 */ #include &l ...

  3. CF909A Generate Login

    CF909A Generate Login 题意翻译 给定两个用空格分隔的字符串,分别取两字符串的任意非空前缀,将两前缀合并为一个新的字符串,求可行字典序最小的字符串. 题目描述 The prefer ...

  4. java import跨包引用类理解

    当前类要用其他类时,import具体包路径+.+具体的类 import引入的是被引用类的class文件,所以当我们build path第三方jar包时, 要用他们的类,要把jar包add to bui ...

  5. 简单易学的机器学习算法——神经网络之BP神经网络

    一.BP神经网络的概念     BP神经网络是一种多层的前馈神经网络,其基本的特点是:信号是前向传播的,而误差是反向传播的.详细来说.对于例如以下的仅仅含一个隐层的神经网络模型: watermark/ ...

  6. muduo总结

    总结说的有的过大,算是对自己学习的一个总结.兴许会不断补充. 模型总结 muduo是基于非堵塞的IO和事件驱动的网络库. muduo的总体结构时one loop per thread+threadpo ...

  7. 虚拟ONVIF 摄像机

    測试视频监控系统须要大量的Camera.搭建起来也很麻烦,在vdceye中增加虚拟onvif 摄像 机支持,把一个Camera变成上百个. watermark/2/text/aHR0cDovL2Jsb ...

  8. 微软ASP.NET网站部署指南(3):使用Web.Config文件的Transformations

    1. 综述 大多数程序里都会在Web.config里设置參数,而且在部署的时候须要更改. 每次都手工更改这些配置非常乏味,也easy出错. 该章节将会告诉你假设通过自己主动化更新Web.config文 ...

  9. 基于Linux环境Tomcat-MySQL的server搭建

    在开发日趋激烈的今天.我们可不能再仅仅会编码了.这样搞不好.就成了一辈子的码奴!所以这里简单的分享一下server的搭建,因为Linux的安全性等一切因素让它成为了server平台的首选环境!今天跟大 ...

  10. USACO 1.5 Superprime Rib

    Superprime Rib Butchering Farmer John's cows always yields the best prime rib. You can tell prime ri ...