Time Limit: 3 second
Memory Limit: 2 MB
输入一个三位数的整数,将数字位置重新排列,组成一个尽可大的三位数。例如:输入213,重新排列可得到尽可能大的三位数是321。
Input
输入文件只有一行,内容为一个三位数的整数。如198Output
输出文件只有一行,输出内容为重排后尽可能大的三位数981Sample Input
198
Sample Output
981
【题解】
以字符串形式输入,冒泡排序,从大到小排,直接输出就好
【代码】
#include <iostream> #include <string> using namespace std; string str; void input_data() //以字符串形式输入 { cin >> str; } void sort() { bool flag = false; //冒泡排序 while (!flag) { flag = true; for(int i = 0;i <= 1; i++) if (str[i] < str[i+1]) { flag = false; char t = str[i];str[i] = str[i+1];str[i+1] = t; } } } void output_ans() { cout << str; } int main() { input_data(); sort(); output_ans(); return 0; }