CF749D.Leaving Auction
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
There are n people taking part in auction today. The rules of auction are classical. There were n bids made, though it's not guaranteed they were from different people. It might happen that some people made no bids at all.
Each bid is define by two integers (a__i, b__i), where a__i is the index of the person, who made this bid and b__i is its size. Bids are given in chronological order, meaning b__i < b__i + 1 for all i < n. Moreover, participant never makes two bids in a row (no one updates his own bid), i.e. a__i ≠ a__i + 1 for all i < n.
Now you are curious with the following question: who (and which bid) will win the auction if some participants were absent? Consider that if someone was absent, all his bids are just removed and no new bids are added.
Note, that if during this imaginary exclusion of some participants it happens that some of the remaining participants makes a bid twice (or more times) in a row, only first of these bids is counted. For better understanding take a look at the samples.
You have several questions in your mind, compute the answer for each of them.
今天共有 n 个人参与拍卖。拍卖规则为经典规则。总共产生了 n 次出价,但这些出价不一定来自不同的人;有可能某些人根本没有出价。
每次出价由两个整数 (ai,bi) 表示,其中 ai 是出价人的编号,bi 是该次出价的金额。所有出价按时间顺序给出,即对所有 i<n,均有 bi<bi+1。此外,参与者不会连续两次出价(即无人会立即更新自己的出价),即对所有 i<n,均有 ai=ai+1。
现在你考虑如下问题:如果某些参与者缺席,谁(以及哪一次出价)将赢得拍卖?假设某人缺席时,其所有出价均被直接移除,且不新增任何出价。
注意:在上述“假想的缺席”情形下,若剩余参与者中有人连续多次出价(两次或更多),则仅保留其中第一次出价,其余出价均忽略。为更好理解,请参阅样例。
你心中有若干个此类问题,请对每个问题分别计算答案。
输入格式
The first line of the input contains an integer n (1 ≤ n ≤ 200 000) — the number of participants and bids.
Each of the following n lines contains two integers a__i and b__i (1 ≤ a__i ≤ n, 1 ≤ b__i ≤ 109, b__i < b__i + 1) — the number of participant who made the i-th bid and the size of this bid.
Next line contains an integer q (1 ≤ q ≤ 200 000) — the number of question you have in mind.
Each of next q lines contains an integer k (1 ≤ k ≤ n), followed by k integers l__j (1 ≤ l__j ≤ n) — the number of people who are not coming in this question and their indices. It is guarenteed that l__j values are different for a single question.
It's guaranteed that the sum of k over all question won't exceed 200 000.
输入的第一行包含一个整数 n(1 ≤ n ≤ 200000)—— 参与者与报价的总数。
接下来的 n 行中,每行包含两个整数 ai 和 bi(1 ≤ ai ≤ n,1 ≤ bi ≤ 109,且 bi < bi+1)—— 分别表示第 i 个报价的参与者编号及其报价金额。
下一行包含一个整数 q(1 ≤ q ≤ 200000)—— 你提出的问题数量。
接下来的 q 行中,每行首先是一个整数 k(1 ≤ k ≤ n),随后是 k 个整数 lj(1 ≤ lj ≤ n)—— 表示当前问题中不参与的人员数量及其编号。保证在同一问题中所有 lj 互不相同。
保证所有问题中 k 的总和不超过 200000。
输出格式
For each question print two integer — the index of the winner and the size of the winning bid. If there is no winner (there are no remaining bids at all), print two zeroes.
对于每个问题,输出两个整数——获胜者的索引和获胜出价的大小。如果没有获胜者(即完全没有任何剩余出价),则输出两个零。
输入输出样例
输入#1
6 1 10 2 100 3 1000 1 10000 2 100000 3 1000000 3 1 3 2 2 3 2 1 2
输出#1
2 100000 1 10 3 1000
输入#2
3 1 10 2 100 1 1000 2 2 1 2 2 2 3
输出#2
0 0 1 10
说明/提示
Consider the first sample:
-
In the first question participant number 3 is absent so the sequence of bids looks as follows:
- 1 10
- 2 100
- 1 10 000
- 2 100 000
Participant number 2 wins with the bid 100 000.
-
In the second question participants 2 and 3 are absent, so the sequence of bids looks:
- 1 10
- 1 10 000
The winner is, of course, participant number 1 but the winning bid is 10 instead of 10 000 as no one will ever increase his own bid (in this problem).
-
In the third question participants 1 and 2 are absent and the sequence is:
- 3 1 000
- 3 1 000 000
The winner is participant 3 with the bid 1 000.
考虑第一个样例:
-
在第一个问题中,编号为 3 的参与者缺席,因此出价序列为:
- 1 10
- 2 100
- 1 10 000
- 2 100 000
编号为 2 的参与者以出价 100 000 获胜。
-
在第二个问题中,编号为 2 和 3 的参与者缺席,因此出价序列为:
- 1 10
- 1 10 000
获胜者当然是编号为 1 的参与者,但获胜出价为 10,而非 10 000,因为在本题中,任何人都不会提高自己的出价。
-
在第三个问题中,编号为 1 和 2 的参与者缺席,出价序列为:
- 3 1 000
- 3 1 000 000
获胜者是编号为 3 的参与者,获胜出价为 1 000。
输入解题思路,AI测评打分。不知道怎么写?