#include<bits/stdc++.h>
using namespace std;

int main() {
     int n;
    cin >> n;
    int digits[3];
    digits[0] = n / 100;
    digits[1] = (n / 10) % 10;
    digits[2] = n % 10;

    // 对三个数字进行排序
    sort(digits, digits + 3);

    // 处理首位为 0 的情况
    if (digits[0] == 0) {
        // 找到第一个非 0 数字并与首位交换
        for (int i = 1; i < 3; i++) {
            if (digits[i] != 0) {
                swap(digits[0], digits[i]);
                break;
            }
        }
    }

    // 组成最小的三位数
    int result = digits[0] * 100 + digits[1] * 10 + digits[2];

    cout << result << endl;

return 0;
}
/**************************************************************
	Problem: 1243
	User: linmiaoling
	Language: C++
	Result: Accepted
	Time:10 ms
	Memory:2076 kb
****************************************************************/