題目:
4個整數為123,124,56,90,則可以製作以下整數:1231245690,1241235690,
5612312490,9012312456,9056124123等等。實際上可以製造這樣的整數。 但有一件事是肯定的
那個9056124123是可以做的最大的整數。找到這個最大的整數。
思路:這裡輸入的每個數字位數可能很大,所以要用字串。1234 32,肯定是32放在前面,看開頭的數,如果開頭相同,看接下來的數,直到比較出大小。看到這裡是不是感覺和字典序有點狠相似。只不過這裡先找到ascii碼大的.
這裡有個很好用的排序:
bool
cmp(string a, string b)
用來逐個比較ascii碼,ascii大的在前。然後輸出就可以了。
#include#include#include#includeusing namespace std;
string a[55];
bool cmp(string a, string b)
int main()
return 0;
}
UVA10905 思維考察
1 uva10905 思維 2題目大意 3給定n個正整數,你的任務是把它們練成乙個最大的數 4思考 5這道題目應該是在考察歸納的思維吧 6我一開始的思路是將兩個字串按位比較,當位數有剩餘時,再分類討論大小。7但是這樣寫,細節上很容易出錯.8但是,如果換一種方法,忽略細節,直接連成s1 s2和s2 s...
組合成最大整數
問題描述 給定乙個整數列表,使用列表中的數值組成乙個數,保證這個數是最大的。測試樣例 參考 usr bin env python3 coding utf 8 o nlogn time,o n space.from functools import cmp to key 使用貪心演算法將每乙個數值按照...
整數陣列的組合問題
2015年9月16日,美團南京站南京郵電大學筆試題目之一。大致的題意是這樣的 有乙個元素各不相同的整數陣列,輸入元素的所有組合,長度由大到小。例如 1,2,3,4 依次輸出1234,123,134,234,12,13,14,23,24,1,2,3,4 思路 1 設輸出的組合的長度為m m n 2 把...