YLT C++ 5级 2023.05
N3047 [CIE 202305 五级 T1] 问题求解
题目描述
给定一个正整数 ,求最小的 满足比 大且 与 的二进制表示中有相同数目的1。
举个例子,假如给定 为 ,二进制表示为 ,包含 个 ,那么最小的比 大的并且二进制表示中只包含 个 的数是 ,其二进制是,因此 就是答案。
输入格式
输入若干行,每行一个数 ,如果这行为 表示输入结束。
输出格式
对于每个 ,输出对应的 。
样例
样例 1
输入:
1
2
3
4
78
0
输出:
2
4
5
8
83
N4975 [CIE 202206 三级 T5] 算24
题目描述
给出 个小于 个正整数,你可以使用加减乘除 种运算以及括号把这 个数连接起来得到一个表达式。现在的问题是,是否存在一种方式使得得到的表达式的结果等于 。 这里加减乘除以及括号的运算结果和运算的优先级跟我们平常的定义一致(这里的除法定义是实数除法)。 比如,对于 ,,,,我们知道 ,因此可以得到 。又比如,对于 ,,,,我们怎么都不能得到 。
输入格式
输入数据包括多行,每行给出一组测试数据,包括 个小于 的正整数。
最后一组测试数据中包括 个 ,表示输入的结束,这组数据不用处理。
输出格式
对于每一组测试数据,输出一行,如果可以得到 ,输出 YES;否则,输出 NO。
样例
样例 1
输入:
5 5 5 1
1 1 4 2
0 0 0 0
输出:
YES
NO
提示
无
N3048 [CIE 202305 五级 T3] 忍者道具
题目描述
忍者道具有很多种,苦无,飞镖,震爆弹。 君热衷于收集忍者道具,现在他有 个道具,每个道具的重量分别是 、…。现在他想把这 个道具装到载重量为 的工具包里,请问他最少需要多少个工具包?
输入格式
第一行包含两个用空格隔开的整数, 和 。
接下来 行每行一个整数,其中第 行的整数表示第 个道具的重量 。
输出格式
输出一个整数,最少需要多少个工具包。
样例
样例 1
输入:
5 1996
1
2
1994
12
29
输出:
2
提示
对于 的数据,。
N3049 [CIE 202305 五级 T4] 泳池
题目描述
小 在一个排水系统不太好的学校上学。又是一个下雨天,学校里高低不平积了很多水。小 突发奇想:如果大雨一直下,多久以后我可以在学校里游泳呢?
学校是 的坐标方格 中,每一个方格的值 表示在位置 的高度。现在开始下雨了。当时间为 时,此时雨水导致方格中任意位置的水位为 。你可以从一个方格游向四周相邻的任意一个方格,但是前提是此时水位必须同时淹没这两个方格。假定小 的游动是不耗时的。
现在小 从坐标方格的左上 出发。最少耗时多久他才能到达坐标方格的右下平台 ?
输入格式
第一行有一个整数 ,以下是一个 的方阵,代表各处的高度。
输入范围: ,
输出格式
输出一个整数,代表最少等待时间 。
样例
样例 1
输入:
2
0 2
1 3
输出:
3
样例 2
输入:
5
0 1 2 3 4
24 23 22 21 5
12 13 14 15 16
11 17 18 19 20
10 9 8 7 6
输出:
16
提示
样例 :时间为 时,才可以游向平台 ,此时水位为 。
样例 :时间为 时,水位为 ,此时才能保证 和 是联通的(请自行找出一条通路)。
