B3934 [语言月赛 202402] 三位数 题解

· · 题解

Source & Knowledge

2024 年 2 月语言月赛,由洛谷网校入门计划/基础计划提供。

出题人题解。

题目大意

一个三位十进制数,百位为 a,十位为 b,个位 c,若 a \times 10 + bb \times 10 + ca \times 100 + b \times 10 + c 均为 k 的倍数,且百位不为 0,则这个数字合法,请你输出所有合法的数字。如果一个也没有,输出 None!

题目分析

本题考查对循环结构的运用。

分别在 1 \sim 9 的范围枚举 a,在 0 \sim 9 的范围枚举 b,在 0 \sim 9 的范围枚举 c,按照这个条件进行判断即可。如果一个也没有,输出 None! 即可。

cin >> k;
bool flg = false;
for (ll a = 1; a <= 9; a++){
    for (ll b = 0; b <= 9; b++){
        for (ll c = 0; c <= 9; c++){
            if ((a * 10 + b) % k == 0 && (b * 10 + c) % k == 0 && (a * 100 + b * 10 + c) % k == 0){
                cout << a << b << c << endl;
                flg = true;
            }
        }
    }
}
if (!flg){
    cout << "None!" << endl;
}

视频题解