uva 400 Unix ls 127页

来源:互联网 发布:米惠淘宝返利网 编辑:程序博客网 时间:2024/06/07 03:46
#include <iostream>#include <cstdio>#include <algorithm>#include <string>using namespace std;const int maxcol=60;const int maxn=100+5;string filename[maxn];void print(string x,int len,char str) {    cout<<x;    int l=len-x.length();    for(int i=1;i<=l;i++) {        cout<<str;    }}int main() {//  freopen("input.txt","r",stdin);    int n;    while(scanf("%d",&n)!=EOF) {        int M=0;        for(int i=0;i<n;i++) {            cin>>filename[i];            M=max(M,(int)filename[i].length());        }        int col=(maxcol-M)/(M+2)+1;        int row=n/col+(n%col==0?0:1);        print("",60,'-');        printf("\n");        sort(filename,filename+n);        for(int i=0;i<row;i++) {            for(int j=0;j<col;j++) {                int index=j*row+i;                if(index<n) print(filename[index],col==n-1?M:M+2,' ');            }            printf("\n");        }    }    return 0;}