problem description
輸入一行數字,如果我們把這行數字中的『5』都看成空格,那麼就得到一行用空格分割的若干非負整數(可能有些整數以『0』開頭,這些頭部的『0』應該被忽略掉,除非這個整數就是由若干個『0』組成的,這時這個整數就是0)。
你的任務是:對這些分割得到的整數,依從小到大的順序排序輸出。
input
輸入包含多組測試用例,每組輸入資料只有一行數字(數字之間沒有空格),這行數字的長度不大於1000。
輸入資料保證:分割得到的非負整數不會大於100000000;輸入資料不可能全由『5』組成。
output
對於每個測試用例,輸出分割得到的整數排序的結果,相鄰的兩個整數之間用乙個空格分開,每組輸出佔一行。
sample input
0051231232050775
sample output
0 77 12312320
**:
#include#include#include#includeusing namespace std;
string str;
int num[1010];
int main()
continue;
}sum=sum*10+str[i]-'0'; //將單個數字組成整體
}if(str[str.length()-1]!='5') num[len++]=sum;
sort(num,num+len); //將數字排序
for(i=0;icout
return 0;
}
A 排序去重
有n 個1 到 1000 之間的整數 對於其中重複的數字,只保留乙個,把其餘相同的數去掉。然後再按照指定的排序方式把這些數排序。第 1 行為字母 a 或 d,a 表示按照公升序排序,d 表示按照降序排序。第 2 行開始有若干個用乙個空格或換行符分隔的正整數。相互之間用乙個空格分隔的經去重和排序後的正...
去重排序 JS 陣列去重
陣列去重算是面試題裡常見的考點了,之前在 medium 上看到一篇文章用三種方法實現陣列去重的,感覺十分簡潔。主要用到的是 set,array.filter,array.reduce。可能第一種大家都知道,方方也講過基數排序來去重,但是能用 filter,reduce 寫成這樣的真的很簡潔呀。let...
去重排序問題
明明想在學校中請一些同學一起做一項問卷調查,為了實驗的客觀性,他先用計算機生成了n個1到1000之間的隨機整數 n 1000 對於其中重複的數字,只保留乙個,把其餘相同的數去掉,不同的數對應著不同的學生的學號。然後再把這些數從小到大排序,按照排好的順序去找同學做調查。請你協助明明完成 去重 與 排序...