栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

UVa 1593 代码对齐

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

UVa 1593 代码对齐

最开始写的AC代码

#include 

using namespace std;

string in[1005][185];
int len[185];//每一列的输出格式
int lens[1005];//每行的长度
int i = 0,ii = 0,iii = 0;

void print(string s,int len)
{
    cout<>in[i][j++]);
        lens[iii++] = j - 1;
        //cout< 

接下来是搜了题解后优化修改的代码

巧用STL:

#include 

using namespace std;

vector line[1005];
int maxcol[185] = {0};//每列单词最长值,使用方法高能
int l = 0;

int main ()
{
    //IN OUT
    string s;
    while(getline(cin,s))
    {
        stringstream ss(s);
        while(ss>>s)
        {
            maxcol[line[l].size()] = max(maxcol[line[l].size()] , (int)s.size());//nice
            line[l].push_back(s);
        }
        l++;
    }
    for(int i=0;i 

1、用STL中的不定长数组vector储存数据的好处:

     可以直接用size测出每一行字符串的个数

2、maxcol数组使用很nice,不需要再写一个双层循环,来记录每一列最长字符串的长度。详细用法见代码。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/718028.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号