uva-1593 代码对齐
2014-11-25 21:14
351 查看
题意如下:输入若干行代码,要求各列单词的左边界对齐且尽量靠左。单词之间至少要空一格。每个单词不超过80个字符,每行不超过180个字符,一共最多1000行。 注意输出时每行的最后一列后面没有空格符。 代码如下:代码中有详细的注释!
<pre name="code" class="cpp">#include<iostream> #include<sstream> #include<string> #include<vector> using namespace std; vector<string> txt[1314]; string code,te; int max_len[250];//将每一列中最长的单词的长度保存下来,以便保证格式! void print(string s,int len) {//格式化输出! for(int i=0; i<s.size(); i++) cout<<s[i]; for(int i=0; i<=len-s.size(); i++) cout<<' '; //cout<<'*'; } int main() { int col=0,row=0;//代码行数,col表示每一行的“单词”个数! while(getline(cin,code)) { stringstream tran(code);//创建一个“字符串流”——tran,接下来只需要像读取cin那样读取tran即可! while(tran>>te) { max_len[col]=max(max_len[col],(int)te.size());//比较长度取大值。 col++; txt[row].push_back(te);//将每一个单词存进容器里面! } row++,col=0; } for(int i=0; i<row; i++) { int j=0; for(; j<txt[i].size()-1; j++) print(txt[i][j],max_len[j]); cout<<txt[i][j]<<endl;//每行的最后一列是不用输出空格的! } return 0; }
相关文章推荐
- UVa 1593代码对齐
- 代码对齐 - uva1593 - streamstring的用法
- string的使用uva-1593 代码对齐
- UVa 1593 Allgnment of Code代码对齐( 习题5-1)
- UVa 1593 Allgnment of Code 代码对齐
- 5-1 代码对齐 UVA1593
- uva1593代码对齐
- uva 1593 代码对齐
- Alignment of Code (代码对齐)UVA1593
- [UVa 1593] Alignment of Code 代码对齐
- UVa 1593代码对齐
- uva 1593 代码对齐
- Uva1593 代码对齐
- UVA1593 不定量不定长度单词,左对齐
- UVA - 1593 Alignment of Code 纯代码功底
- UVA 1593 代码格式(stl)
- VS2008 (vc2008)对齐代码
- Source insight代码对齐
- VS2008 代码对齐 快捷键
- 让 UILabel 垂直方向顶端对齐的代码