题目描述
给出 n,请输出一个直角边长度是 n 的数字直角三角形。所有数字都是 2 位组成的,如果没有 2 位则加上前导 0。
输入格式
输入一个正整数 n。
输出格式
输出如题目要求的数字直角三角形。
输入输出样例
输入
5
输出
0102030405
06070809
101112
1314
15
说明/提示
数据保证,1≤n≤13。
这题还是有点技巧的
可以看出要输出�(�+1)a(a+1)个数
每行输出a,a-1......,1个数
所以用i记录现在要输出什么
j记录在第几列
j>a之后就换行
输出是注意所有数字都是 2 位组成的即可
废话不多说,直接上code:
#include <bits/stdc++.h>
using namespace std;
int a,b;
int main(){
int i,j,k;
cin>>a;
b=a;
a=a*(a+1)/2;
j=1;
i=1;
while(i<=a)
{
if(i<10)
cout<<0<<i;
else
cout<<i;
i++;
j++;
if(j>b)
{
b--;
j=1;
cout<<endl;
}
}
return 0;
}
记得点个赞哟!