L1-039 古风排版 分数 20

因为每一列字符数固定,因此只需要根据字符在字符串第i个位置mod n,就可以知道在第几行。最后每一行字符串逆序输出,并补充最后一行的空格即可。

// 17'26"
#include <bits/stdc++.h>
using namespace std;
int main()
{
    int n;
    string emp;
    cin >> n;
    string s;
    getline(cin,emp);
    getline(cin,s);
    vector<vector<char>> res(n);
    for(int i = 0; i < s.size(); ++ i)
    {
        res[i % n].push_back(s[i]);
    }
    int col = res[0].size();
    for(int i = 0; i < n; ++ i)
    {
    	for(int j = 1; j <= col - (int)res[i].size(); ++ j)
			cout << " ";
        for(int j = res[i].size() - 1; j >= 0; -- j)
            cout << res[i][j];
        cout << endl;
    }
    return 0;
}
posted @   Frodnx  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示