演算法設計(c++)
阿新 • • 發佈:2020-09-22
題目資訊
題目源:codeforce,連結:https://codeforces.com/problemset/problem/339/A
涉及的演算法及資料結構:貪心,排序,字串
需求分析
這道題目很簡單,第一反應就是將數存到容器,排序後在輸出。沒有什麼複雜的演算法設計。
總結
通過這道演算法題對vector容器更加熟練,vector的存入以及遍歷輸出,vector的end指向的是最後元素的後一個位置,用系統sort函式對vector進行排序。
程式碼實現
1 #include<iostream> 2 #include<string> 3 #include<vector> 4#include<algorithm> 5 using namespace std; 6 7 8 int main() 9 { 10 string bs ; 11 cin>>bs; 12 vector<int> list; 13 for(int i=0;i<bs.length();i++) 14 { 15 if(bs[i]>=49&&bs[i]<=57) 16 { 17 list.push_back(bs[i]-48);18 } 19 } 20 //for迴圈遍歷vector容器 21 /*for (vector<int>::iterator it = list.begin(); it != list.end(); it++) { 22 cout << *it << " "; 23 } 24 cout << endl;*/ 25 sort(list.begin(),list.end());//用系統sort函式對vector容器排序 26 /*for (vector<int>::iterator it = list.begin(); it != list.end(); it++) {27 cout << *it << " "; 28 } 29 cout << endl;*/ 30 for(vector<int>::iterator it = list.begin();it!= list.end();it++) 31 { 32 if(it!=list.end()-1) 33 cout<<*it<<"+"; 34 else 35 cout<<*it; 36 } 37 return 0; 38 }