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;
}
浙公网安备 33010602011771号