本题根据手机电量的百分比 P 输出不同的显示信息。题目清晰地给出了三个判断区间:
R。L。题目输入包含多组测试数据,我们需要对每组数据分别进行判断并输出结果。
本题是一道典型的条件分支题目,只需要严格按照题目的判定规则编写代码即可。
if-else 语句进行判断:
R。L。边界值验证:
R(第一个条件包含等号,正确)。L(落入第二个条件,正确)。L(第二个条件包含等号,正确)。21(第三个条件,正确)。本题仅涉及基本的输入输出和条件判断,没有使用复杂的数据结构和算法。
伪代码描述如下:
读入 T
循环 T 次:
读入 P
如果 P <= 10:
输出 "R" 并换行
否则如果 P <= 20:
输出 "L" 并换行
否则:
输出 P 并换行
程序需要处理 T 组数据,对于每组数据只进行常数次比较和输出操作。因此总时间复杂度为 O(T)。
根据数据范围 1≤T≤20,该算法可以在极短时间内完成,完全满足题目的时间限制。
cpp1#include <iostream> 2using namespace std; 3 4int main() { 5 int T; // 测试组数 6 cin >> T; 7 8 while (T--) { // 循环 T 次 9 int P; // 当前手机电量百分比 10 cin >> P; 11 12 if (P <= 10) { // 电量 ≤ 10 13 cout << "R\n"; 14 } else if (P <= 20) { // 10 < 电量 ≤ 20 15 cout << "L\n"; 16 } else { // 电量 > 20 17 cout << P << '\n'; 18 } 19 } 20 21 return 0; 22}
#include <iostream> 用于输入输出,using namespace std; 方便直接使用 cin 和 cout。T:存储数据组数。while (T--) 循环:每执行一次,T 自减 1,循环直到 T 变为 0,恰好处理 T 组数据。P:每次循环读取一个电量值。P <= 10:符合电量非常低的情况,输出 R。else if (P <= 20):当 P>10 且 P≤20 时进入,输出 L。else:剩余情况即 P>20,直接输出数字 P。\n 或 endl 均可,\n 通常效率稍高。题目虽然简单,但能帮助初学者熟练使用 if-else 结构以及处理多组数据的输入模式。希望这篇题解对你有帮助!