#C. 梦中的IOI2025

    传统题 1000ms 256MiB

梦中的IOI2025

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

题目描述

前两天,20252025 年的 IOIIOI 比赛刚刚结束,我们也恭喜一下中国 44 名选手全部获得 IOIIOI 金牌。并且中国选手刘恒熙同学,获得 IOIIOI 冠军。

关注过 IOIIOI 比赛的同学应该知道,IOIIOI 的比赛是分为 22 场比赛进行,最后算总分。

在梦里,你也参加了 20252025IOIIOI 的比赛。

假设有 mm 名选手参加 IOIIOI 比赛,总共分为 nn 场比赛。假设你在第 ii 场比赛的排名为 aia_i,排名定义为分数严格大于你的人数 +1+1

ii 场比赛的满分为 bib_i 分,选手可能获得的分数为 [0,bi][0,bi] 间的整数。

比赛结束后,对每天的成绩算总分,排名 不超过 kk 的选手可以获得金牌。你想知道你是否一定可以拿到金牌。

可恶,怎么梦里都拿不到 IOIIOI 金牌呢?真菜啊,还是得多练。

如果一定可以拿到金牌输出 haha,否则输出 caijiuduolian

这里需要注意,由于不确定每个人的成绩,所以你是有可能无法拿到金牌的,一定的意思就是在 任何情况 下,你都一定是金牌。否则就是 不一定,那就菜就多练吧!

输入格式

第一行输入一个正整数 tt,表示组数。

接下来 tt 组数据,每组数据:

第一行输入三个正整数 nmkn、m、k,含义如题所述。

第二行输入 nn 个正整数,表示 aia_i

第三行输入 nn 个正整数,表示 bib_i

输出格式

每组数据输出一行,haha 或者 caijiuduolian,表示答案

2
3 320 50
1 100 1
100 300 300
3 320 50
1 1 1
100 300 300
caijiuduolian
haha

样例解释:

对于第一组数据而言,33 场比赛,320320 个选手,排名不超过 5050 的选手获得金牌。

第一场比赛你拿到了第 11 名,第二场比赛拿到了第 100100 名,第三场比赛你也拿到了第 11 名。

第一场比赛的满分是 100100 分,第二场比赛满分是 300300 分,第三场比赛的满分是 300300 分。

我们考虑一种你无法拿到金牌的情况:

第一场比赛中,你拿到了 5050 分,排名第二的共有 5050 人,并列第二,他们都拿到了 4040 分。

第二场比赛中,你只拿到了 1010 分,排名在 11 ~ 9999 的人并列第一,都考了 300300 分。

第三场比赛中,你又拿到了 5050 分,排名第二的共有 5050 人,并列第二,他们都拿到了 4040 分。

可以想到,你的总分是 50+10+50=11050 + 10 + 50 = 110 分,而很可惜,第二天考 300300 分的人已经有 9999 位了,你不一定拿到金牌。

对于第二组数据:

你发挥出色,天天第一,那当然是金牌啦!

数据规模与约定

对于 30%30\% 的数据,$1 \le t \le 10,1 \le n \le 100,1 \le k \le m \le 10000,1 \le a_i \le m,1 \le b_i \le 10000$。

对于 100%100\% 的数据,$1 \le t \le 2025,1 \le n \le 2 * 10^5,1 \le k \le m \le 10^9,1 \le a_i \le m,1 \le b_i \le 10^9$。

数据保证,对于每个测试点:n2105\sum n \le 2 * 10^5

本道题目可能读入数据较大,请使用读入加速,以及不要用很慢的 endl

ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);

汉中校区 CSP-J 赛前模拟2

未参加
状态
已结束
规则
OI
题目
4
开始于
2025-9-13 18:00
结束于
2025-9-15 22:00
持续时间
2 小时
主持人
参赛人数
12