51 nod 1097 拼成最小的数 思路:字符串排序
生活随笔
收集整理的這篇文章主要介紹了
51 nod 1097 拼成最小的数 思路:字符串排序
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目:
?
?
思路:1.以字符串輸入這些整數(shù)。
2.對這些字符串排序,排序規(guī)則為盡量讓能讓結(jié)果變小的靠前。
?
代碼中有注釋,不懂的歡迎在博客中評論問我。
?
?
代碼:
#include <bits\stdc++.h> using namespace std;string a[10001];//比較規(guī)則:盡量讓結(jié)果字符串最小 bool cmp(string a,string b){return a+b <= b+a; }int main(){int n; cin >> n;for(int i = 0;i < n; i++){cin >> a[i];}sort(a,a + n,cmp); //排序 //因為要1000個字符空一行,所以先將結(jié)果存入到一個字符串 string s;for(int i = 0;i < n; i++){s += a[i];}for(int i = 0;s[i]; i++){if(i%1000 == 0) cout << endl; //每1000個字符空一行,嚴(yán)格來說應(yīng)該要排除i = 0 cout << s[i];}return 0; } //writed by zhangjiuding?
總結(jié)
以上是生活随笔為你收集整理的51 nod 1097 拼成最小的数 思路:字符串排序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 51nod 1103 N的倍数 思路:抽
- 下一篇: 51 nod 1624 取余最长路 思路