CCF GESP 2025年3月认证 C++ 3级
三
编程题
第 1 题
2025
题目描述
小 A 有一个整数 $x$,他想找到最小的正整数 $y$ 使得下式成立:
$(x\ and\ y)+(x\ or\ y)=2025$
其中 and 表示二进制按位与运算,or 表示二进制按位或运算。如果不存在满足条件的 $y$,则输出 −1。
输入格式
一行,一个整数 $x$。
输出格式
一行,一个整数,若满足条件的 $y$ 存在则输出 $y$,否则输出 −1。
样例说明
样例 1
输入:
1025
输出:
1000
数据范围
对于所有测试点,保证 $0≤x<2025$。
提示
$(x\ and\ y)+(x\ or\ y)=2025$
其中:
- $and$ 表示按位与运算,运算符为
&。 - $or$ 表示按位或运算,运算符为
∣。
第 2 题
词频统计
题目描述
在文本处理中,统计单词出现的频率是一个常见的任务。现在,给定 n 个单词,你需要找出其中出现次数最多的单词。在本题中,忽略单词中字母的大小写(即 Apple、apple、APPLE、aPPle 等均视为同一个单词)。
请你编写一个程序,输入 n 个单词,输出其中出现次数最多的单词。
输入格式
第一行,一个整数 $n$,表示单词的个数;
接下来 $n$ 行,每行包含一个单词,单词由大小写英文字母组成。
输入保证,出现次数最多的单词只会有一个。
输出格式
输出一行,包含出现次数最多的单词(输出单词为小写形式)。
样例说明
样例 1
输入:
6
Apple
banana
apple
Orange
banana
apple
输出:
apple
数据范围
对于所有测试点,$1≤n≤100$,每个单词的长度不超过 30,且仅由大小写字母组成。
编程题部分已到底了。