题解:SP400 TOANDFRO - To and Fro

· · 题解

题目大意:

给定一个字符串,将字符串按照蛇形填充在大小为 n \times m 大小的矩阵中,再按照纵列输出。

然后直接做就行了,判断当前行的奇偶,然后按照从左到右或者从右到左的方向填充。

#include<bits/stdc++.h>
using namespace std;
int x,cnt;
char a[205][205];
int main(){
    while(cin>>x&&x!=0){
        cnt=0;
        memset(a,0,sizeof(a));
        string s;
        cin>>s;
        s=" "+s;
        int len=s.size()/x;
        for(int i=1;i<=len;i++)
            for(int j=(i&1?1:x);i&1?j<=x:j>=1;i&1?j++:j--) a[i][j]=s[++cnt];
        for(int j=1;j<=x;j++)
            for(int i=1;i<=len;i++) cout<<a[i][j];
        cout<<"\n"; 
    }
    return 0;
}