問題描;述輸入一行數字,如果我們把這行數字中的『5』都看成空格,那麼就得到一行用空格分割的若干非負整數(可能有些整數以『0』開頭,這些頭部的『0』應該被忽略掉,除非這個整數就是由若干個『0』組成的,這時這個整數就是0)。
你的任務是:對這些分割得到的整數,依從小到大的順序排序輸出。
input
輸入包含多組測試用例,每組輸入資料只有一行數字(數字之間沒有空格),這行數字的長度不大於1000。
輸入資料保證:分割得到的非負整數不會大於100000000;輸入資料不可能全由『5』組成。
output
對於每個測試用例,輸出分割得到的整數排序的結果,相鄰的兩個整數之間用乙個空格分開,每組輸出佔一行。
問題分析:為了避免數字0放開頭會被忽略掉,所以將數字輸入變成輸入字串,再轉化為數字,也便於比較。由於形成新的乙個數字,所以用另乙個陣列來存放即可,存好後再用氣泡排序法排好。然後分別輸出即可。
解題:`#include"pch.h"
#include
using namespace std;
int main()
;int n = strlen§;
for (; i < n; i++)
if (d == 1 && c == 5)
}if (c != 5)
for (i = 0; i < j; i++)
}if (i < j - 1) cout << a[i] << " ";
else cout << a[i];
} cout << endl;
}return 0;
acm新手訓練題
問題描述 輸入三個字元後,按各字元的ascii碼從小到大的順序輸出這三個字元。輸入幾組字元進行測試。問題分析 將三個字元的ascll碼放入三個整型數中,然後同過三個整數的比較來實現字元的比較。解題步驟 開闢乙個字元空間 通過字元指標實現對字元的訪問,接著用while語句實現多組資料的輸入,在whil...
ACM訓練二E題
題意 給你乙個閉區間 a,b 求乙個最小的l,使得在區間 a,b l 1 內任取乙個數x,可以滿足在x,x 1,x 2,x l 2,x l 1內至少包含k個素數。1 a,b,k 10 6 考察內容 篩素數 二分 一邊篩素數,一邊處理出乙個字首和sum sum i 表示 1,i 中有多少素數 那麼我們...
acm新手刷題攻略之poj
ac的原始碼在這找原始碼 每做一題,就會把題目畫上橫槓,並附加解題思路和 近期內先刷codeforces的,準備比賽 圓周率acos 1.0 自然對數exp 1.0 oj上的一些水題 可用來練手和增加自信 poj3299 poj2159 poj2739 poj1083,poj2262 poj1503...