跟UVa400差不多的题,要求调整代码格式,照这那道题代码改的,一定要注意空格的输出和对齐问题,并不是很难。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35
| #include<iostream> #include<string> #include<vector> #include<sstream> #include<algorithm> using namespace std; const int maxn=1010; vector<string> word[maxn]; int a[maxn]; void print(const string& s,int len,char extra){ cout<<s; for(int i=0;i<len-s.length()+1;i++) cout<<extra; } int main(){ int maxl=0,cnt=0; string s,x; while(getline(cin,s)){ stringstream ss(s); while(ss>>x) word[cnt].push_back(x); maxl=max(maxl,(int)word[cnt].size()); cnt++; } for(int i=0;i<cnt;i++){ for(int j=0;j<word[i].size();j++) a[j]=max(a[j],(int)word[i][j].length()); } for(int i=0;i<cnt;i++){ for(int j=0;j<word[i].size();j++){ if(j==(int)word[i].size()-1) cout<<word[i][j]; else print(word[i][j],a[j],' '); } cout<<endl; } return 0; }
|
** 本文迁移自我的CSDN博客,格式可能有所偏差。 **