• PAT 甲级 1031 Hello World for U


    https://pintia.cn/problem-sets/994805342720868352/problems/994805462535356416

    Given any string of N (≥) characters, you are asked to form the characters into the shape of U. For example, helloworld can be printed as:

    h  d
    e  l
    l  r
    lowo
    

    That is, the characters must be printed in the original order, starting top-down from the left vertical line with n1​​characters, then left to right along the bottom line with n2​​ characters, and finally bottom-up along the vertical line with n3​​ characters. And more, we would like U to be as squared as possible -- that is, it must be satisfied that n1​​=n3​​=max { k | kn2​​ for all 3 } with n1​​+n2​​+n3​​2=N.

    Input Specification:

    Each input file contains one test case. Each case contains one string with no less than 5 and no more than 80 characters in a line. The string contains no white space.

    Output Specification:

    For each test case, print the input string in the shape of U as specified in the description.

    Sample Input:

    helloworld!
    

    Sample Output:

    h   !
    e   d
    l   l
    lowor

    代码:

    #include <bits/stdc++.h>
    using namespace std;
    
    char s[88];
    char maze[88][88];
    int n1, n2, n3;
    
    int main() {
        memset(maze, ' ', sizeof(maze));
        scanf("%s", s);
        int len = strlen(s);
        len += 2;
        n1 = n3 = len / 3;
        n2 = len / 3 + len % 3;
        int cnt = 0;
    
        for(int i = 0; i < n1; i ++)
            maze[i][0] = s[cnt ++];
        for(int i = 1; i <= n2 - 2; i ++)
            maze[n1 - 1][i] = s[cnt ++];
        for(int i = n1 - 1; i >= 0; i --)
            maze[i][n2 - 1] = s[cnt ++];
    
        for(int i = 0; i < n1; i ++) {
            for(int j = 0; j < n2; j ++) {
                printf("%c", maze[i][j]);
            }
            printf("
    ");
        }
        return 0;
    }
    

      

  • 相关阅读:
    PAT 甲级 1115 Counting Nodes in a BST (30 分)
    PAT 甲级 1114 Family Property (25 分)
    PAT 甲级 1114 Family Property (25 分)
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
    Python Ethical Hacking
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/9845777.html
Copyright © 2020-2023  润新知