zoukankan      html  css  js  c++  java
  • 古风排版

    L1-039 古风排版 (20 分)
     

    中国的古人写文字,是从右向左竖向排版的。本题就请你编写程序,把一段文字按古风排版。

    输入格式:

    输入在第一行给出一个正整数N(<),是每一列的字符数。第二行给出一个长度不超过1000的非空字符串,以回车结束。

    输出格式:

    按古风格式排版给定的字符串,每列N个字符(除了最后一列可能不足N个)。

    输入样例:

    4
    This is a test case
    

    输出样例:

    asa T
    st ih
    e tsi
     ce s





     1 #include <iostream>
     2 #include <vector>
     3 #include <string>
     4 #include <algorithm>
     5 using namespace std;
     6 char a[1001][1001];
     7 int main(){
     8     int N;
     9     string s1;
    10     cin >> N;
    11     getchar();
    12     getline(cin, s1);
    13     int n;//用n记录行数 
    14     if(s1.size() % N == 0){
    15         n = s1.size() / N; 
    16     }else{
    17         n = s1.size() / N + 1;
    18     }
    19     int k = 0;
    20     bool flag = false;
    21     int i;
    22     int j;
    23     for(i = 0; i < n; i++){
    24         for(j = 0; j < N; j++){
    25             if(k == s1.size()){
    26                 flag = true;
    27                 break;
    28             }
    29             a[i][j] = s1[k++];
    30         }
    31         if(flag){
    32             break;
    33         }
    34     }
    35     for(int t = 0; t < n * N - k; t++){
    36         a[i][j++] = ' '; 
    37     }
    38     for(int i = 0; i < N; i++){
    39         for(int j = n - 1; j >= 0; j--){
    40             cout << a[j][i];
    41         }
    42         cout << endl;
    43     }
    44     return 0;
    45 }
     
  • 相关阅读:
    epoll的LT和ET(转)
    js和jQuery的互相转换
    Spring的回滚问题
    Spring的事务
    分布式锁的实现方式
    xml是什么
    ajax的4个字母分别是什么意思
    try、catch、finally都有return语句时执行哪个
    静态变量、实例变量、局部变量线程安全吗,为什么
    String和StringBuilder、StringBuffer的区别
  • 原文地址:https://www.cnblogs.com/AGoodDay/p/10614358.html
Copyright © 2011-2022 走看看