TB椰程 TypeBuddy 打字搭子

【例33.2】 两位数

C++语法 · 循环结构 · 代码 · cpp · 难度 3/5 · 共 555 字

由数字和与差枚举出最小的两位数

  • C++语法
  • 例题

正文

// 原题:https://oj.yecheng.tv/p/P199
// 题意:两位数的十位与个位之和为 a、
//       差(大减小)为 b,求这个两位数,
//       多解时输出最小的。
// 思路:枚举十位和个位的所有组合,
//       验证和与差,找到的第一个就是最小的。
#include <iostream>
using namespace std;

int main() {
    int a, b;
    cin >> a >> b;
    // 十位从 1 开始枚举,保证枚举顺序就是数的大小顺序
    for (int t = 1; t <= 9; t++) {
        for (int u = 0; u <= 9; u++) {
            // 同时满足和为 a、差的绝对值为 b
            if (t + u == a && (t - u == b || u - t == b)) {
                cout << t * 10 + u << endl;
                return 0;
            }
        }
    }
    return 0;
}

C++语法 · 循环结构的其它内容

打字首页 · 词库画廊 · 编程打字 · 指法入门 · 天梯榜 · 数据分析 · 班级课堂 · 关于我们
椰程 TypeBuddy 打字搭子 —— 键盘指法练习 · 单词记忆 · 班级课堂 · 在线 PK