Advertisement

上海计算机学会第14届C++组T形填充实验

阅读量:

题目描述

设有一个整数 n,同时提供 n² 个字符,要求将这些字符按照 z 形方式排列成一个 n×n 的二维矩阵。

所谓 z 形排列方式,是指起始字符位于矩阵的左上角,随后沿着对角线方向依次放置字符,形成类似字母 z 的路径。以 n=4 为例,其排列顺序的标记如下:

输入格式

  • 首行输入为一个单独的整数 n
    • 第二行输入包含 n2 个可显示字符,用于表示给定的字符序列

输出格式

一个由n行n列组成的字符矩阵,其中字符按照z字形的排列方式进行布局

数据范围

  • 50% 的数据样本,其范围限定在 1 至 5 之间
    • 所有数据样本,其范围限定在 1 至 100 之间

样例数据展示

5
abcdefghijklmnopqrstuvwxy

输出:

abfgo
cehnp
dimqv
jlruw
kstxy

题解

本题核心在于斜边坐标值的递增变化,同时每个斜边所能容纳的数据量呈现出先上升后下降的趋势。相关实现代码如下。

复制代码
 #include<iostream>

全部评论 (0)

还没有任何评论哟~