Tìm số lớn nhất tạo bởi 2 chữ số trong số có 3 chữ số đã cho

15
Lập trình C++

Bài toán. Cho số nguyên dương n là số có 3 chữ số. Nam thực hiện xóa đi 1 chữ số trong 3 chữ số của n để thu được số n mới là số có 2 chữ số. Hãy tìm số n lớn nhất có thể. Ví dụ:

MAX.INP

MAX.OUT

486

86

Code tham khảo:

#include <iostream>
#include <cmath>
using namespace std;
int main() {
    freopen("MAX.INP","r",stdin);
    freopen("MAX.OUT","w",stdout);
    int n;
    cin >> n;
    int a = n % 10;
    n /= 10;
    int b = n % 10;
    n /= 10;
    int c = n;
    int a1 = 10*a + b;
    int a2 = 10*a + c;
    int a3 = 10*b + a;
    int a4 = 10*b + c;
    int a5 = 10*c + a;
    int a6 = 10*c + b;
    int max = a1;
    if (max < a2) max = a2;
    if (max < a3) max = a3;
    if (max < a4) max = a4;
    if (max < a5) max = a5;
    if (max < a6) max = a6;
    cout << max;
    return 0;
}