倒数字三角

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了倒数字三角相关的知识,希望对你有一定的参考价值。

 描述 Description

以下的数字倒直角三角形是由二个数确定的:一个数是行数R,1<=R<=39,另一个是种子数S,1<=S<=9。S放在左上角,照着样例输出文件的样子,写一个程序,根据输入的二个数打印出相应的数字倒直角三角形。

 

输入格式 Input Format

单独一行,二个用空格隔开的整数 

 

输出格式 Output Format

输出倒直角数字三角形,输出时数字与数字之间不留空格字符。

 

样例输入 Sample Input

 

6 1

 

样例输出 Sample Output

 

124727
35838
6949
151
62
3

(由于显示问题三角形应该是右对齐!!!)

技术分享

 

时间限制 Time Limitation

1s

 

来源 Source

usaco 月赛

 

 

    一道比较刚的二维数组的题,对于刚学数组没几天的我看到这道题其实我是拒绝的,刚看完题我心里就暗想,这TMD是啥,然后再仔细看了看才发现可以换一种思想来写这道题

 

那就是将我们一惯把二位数组由行输出的方式转化成由列的方式输出,这样问题就可以解决了。

 

贴出代码:

 1 #include <iostream>
 2 using namespace std;
 3 int s,r,a[50][50];
 4 void init()
 5 {
 6     cin>>r>>s;
 7     for(int i=1;i<=r;i++)
 8         for(int j=1;j<=i;j++)
 9         {
10             a[i][j]=s;     //第一个数
11             if(s<9)        //判断 如果大于9就从1开始
12                 s++;
13             else
14                 s=1;
15         }
16 }
17 void work()
18 {
19     for(int j=1;j<=r;j++)  //控制列 从列输出
20     {
21         for(int l=2;l<=j;l++)//控制行空格
22             cout<< ;
23         for(int i=1;i<=r;i++)//控制行
24         {
25             if(a[i][j]!=0)   
26                 cout<<a[i][j];
27         }
28         cout<<endl;
29     }
30     
31 }
32 int main()
33 {
34     init();
35     work();
36     return 0;
37 }

 






以上是关于倒数字三角的主要内容,如果未能解决你的问题,请参考以下文章

为啥这个 CSS 片段可以画一个三角形? [复制]

杨辉三角

三角函数公式

JavaScript笔试题(js高级代码片段)

数学符号tanx右上角加-1是啥意思

第三章上机实验报告