L1-039. 古风排版
中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。
输入格式:
输入在第一行给出一个正整数N(<100),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。
输出格式:
按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)
做法:倒着排就行了
1 #include<bits/stdc++.h> 2 using namespace std; 3 typedef long long LL; 4 const int maxn = 100010; 5 6 int main() { 7 int n; 8 cin >> n; 9 char s[maxn]; 10 getchar(); 11 gets (s); 12 int j = 0; 13 int i = 0; 14 int len = strlen (s); 15 char a[110][110]; 16 int m = (len + n - 1) / n; 17 for (int g = m - 1; g >= 0; g--) { 18 for (int k = 0; k < n; k++) { 19 if (i < len) { 20 a[k][g] = s[i]; 21 i += 1; 22 } else 23 a[k][g] = ' '; 24 } 25 } 26 for (int k = 0; k < n; k++) { 27 for (int g = 0; g < m; g++) { 28 cout << a[k][g]; 29 } 30 cout << endl; 31 } 32 return 0; 33 }