题解 | #Hello World for U#

Hello World for U

https://www.nowcoder.com/practice/c6e414fddd7c401887c350c9cc41f01b

#include <bits/stdc++.h>
using namespace std;

char mm[30][30];

int main() {
    string s;
    while(cin>>s){
        memset(mm,' ',sizeof(mm));
        int len = s.size()+2; // 三等分会使底部两角落重复,+2
        int len_lr = len /3, len_bottle=len/3 + len%3,s_i=0; // 均分len,多的给底部
        for(int i=0;i<len_lr;i++) mm[i][0] = s[s_i++];
        for(int i=1;i<len_bottle-1;i++) mm[len_lr-1][i] = s[s_i++];
        for(int i=len_lr-1;i>=0;i--) mm[i][len_bottle-1] = s[s_i++];
        for(int i=0;i<len_lr;i++){
            for(int j=0;j<len_bottle;j++)
                cout<<mm[i][j];
            cout<<endl;
        }

    }
}
// 64 位输出请用 printf("%lld")

全部评论

相关推荐

评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务