100 #4369. C++ L18 十六进制直角三角形
C++ L18 十六进制直角三角形
C++ L18 十六进制直角三角形(50分)
题目名称:十六进制直角三角形
题目描述:
输入一个十六进制整数n和一个十进制整数h,根据规则,输出一个十六进制直角三角形。
- 第一行的数为n;
- 从第二行起,每一行都比上一行多一个数;
- 按从左往右,从上往下的顺序排列,每一个数都比上一个数大h。
例如:当n = 14, h = 5时,十六进制直角三角形为:
14
19 1E
23 28 2D
32 37 3C 41
46 4B 50 55 5A
第1行的数是十六进制数14;
第2行第1个数是十六进制数19,比十六进制数14大5;第2个数是十六进制数1E,比十六进制数19大5;
第3行第1个数是十六进制数23,比十六进制数1E大5;……以此类推。~~
输入:
仅1行,包含一个十六进制整数n和一个十进制整数h,两数之间用一个空格隔开。
两个数都不大于十进制数20。
输出:
h行,按样例的格式进行输出;每个十六进制数的显示占用5个字符宽度,且向左对齐,两个相邻的十六进制数之间没有额外的空格。
注意:
- 三角形图案的第一行前面不能有多余的空行;
- 三角形图案的最左侧从第一列开始输出,十六进制数严格按题目要求的格式显示,数之间的空格不能多也不能少;
- 十六进制数中的英文字符统一用大写字母表示。
输入样例1:
14 5
输出样例1:
14
19 1E
23 28 2D
32 37 3C 41
46 4B 50 55 5A
输入样例2:
F 6
输出样例2:
F
15 1B
21 27 2D
33 39 3F 45
4B 51 57 5D 63
69 6F 75 7B 81 87
Limitation
1s, 1024KiB for each test case.