C. 梦中的IOI2025

    传统题 1000ms 256MiB

梦中的IOI2025

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

题目描述

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

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

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

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

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

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

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

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

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

输入格式

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

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

第一行输入三个正整数 n、m、kn、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$。

数据保证,对于每个测试点:∑n≤2∗105\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