【九度OJ】题目1202:排序
- 题目描述:
-
对输入的n个数进行排序并输出。
- 输入:
-
输入的第一行包括一个整数n(1<=n<=100)。
接下来的一行包括n个整数。
- 输出:
-
可能有多组测试数据,对于每组数据,将排序后的n个整数输出,每个数后面都有一个空格。
每组测试数据的结果占一行。
- 样例输入:
-
4 1 4 3 2
- 样例输出:
-
1 2 3 4
AC代码:
#include <iostream> using namespace std; int main() { int num = 0; while(cin >> num) { int arr[num]; for(int i = 0; i < num; i++) { cin >> arr[i]; } for(int i = num - 1; i >= 0; i--) { for(int j = 0; j < i; j++) { if(arr[j] > arr[j + 1]) { int tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } } } for(int i = 0; i < num; i++) { cout << arr[i] << " "; } cout << endl; } return 0; } /************************************************************** Problem: 1202 User: 文剑木然 Language: C++ Result: Accepted Time:60 ms Memory:1520 kb ****************************************************************/
题目很普通,就是简单的排序。
这是之前的Wrong Answer:
#include <iostream> using namespace std; int main() { int num = 0; cin >> num; int arr[num]; for(int i = 0; i < num; i++) { cin >> arr[i]; } for(int i = num - 1; i >= 0; i--) { for(int j = 0; j < i; j++) { if(arr[j] > arr[j + 1]) { int tmp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = tmp; } } } for(int i = 0; i < num; i++) { cout << arr[i] << " "; } cout << endl; return 0; } /************************************************************** Problem: 1202 User: 文剑木然 Language: C++ Result: Wrong Answer ****************************************************************/
居然是要循环输入,,,汗、、、