基础练习 杨辉三角形

时间限制:1.0s   内存限制:256.0MB
   
问题描述

杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数。

  

它的一个重要性质是:三角形中的每个数字等于它两肩上的数字相加。

  

下面给出了杨辉三角形的前4行:

  

1

  

1 1

  

1 2 1

  

1 3 3 1

  

给出n,输出它的前n行。

输入格式

输入包含一个数n。

输出格式
输出杨辉三角形的前n行。每一行从这一行的第一个数开始依次输出,中间使用一个空格分隔。请不要在前面输出多余的空格。
样例输入
4
样例输出
1
1 1
1 2 1
1 3 3 1
数据规模与约定
1 <= n <= 34。
 
分析:
  杨辉三角形的实现可以通过循环打表的方式实现
  再循环输出
 
核心代码:
  

 // 初始化
for(int i = ; i <= n; ++ i)
A[i][] = A[i][i] = ; // 打表
for(int i = ; i <= n; ++ i)
{
for (int j = ; j < i; ++ j)
{
A[i][j] = A[i - ][j] + A[i - ][j - ];
}
}
// 循环输出
for(int i = ; i <= n; ++ i)
{
for(int j = ; j < i; ++ j)
printf ("%d ", A[i][j]);
printf("1\n");
}

C/C++代码实现(AC):

 #include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cmath>
#include <stack>
#include <map>
#include <queue> using namespace std;
int A[][]; void init(int n)
{
for(int i = ; i <= n; ++ i)
A[i][] = A[i][i] = ;
} void solve(int n)
{
for(int i = ; i <= n; ++ i)
{
for(int j = ; j < i; ++ j)
{
A[i][j] = A[i-][j] + A[i-][j-];
}
}
for(int i = ; i <= n; ++ i)
{
for(int j = ; j < i; ++ j)
printf("%d ", A[i][j]);
printf("1\n");
}
return ;
} int main()
{
int n;
scanf("%d", &n);
init(n);
solve(n);
return ;
}

lqb 基础练习 杨辉三角形的更多相关文章

  1. Java实现 蓝桥杯 基础练习 杨辉三角形

    基础练习 杨辉三角形 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 问题描述 杨辉三角形又称Pascal三角形,它的第i+1行是(a+b)i的展开式的系数. 它的一个重要性质 ...

  2. lqb 基础练习 十六进制转十进制

    基础练习 十六进制转十进制 时间限制:1.0s   内存限制:512.0MB     问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. 注:十六进制数中的10~ ...

  3. lqb 基础练习 十六进制转八进制 (字符串进行进制转化)

    基础练习 十六进制转八进制 时间限制:1.0s   内存限制:512.0MB     问题描述 给定n个十六进制正整数,输出它们对应的八进制数. 输入格式 输入的第一行为一个正整数n (1<=n ...

  4. lqb 基础练习 数列排序 (sort的使用)

    基础练习 数列排序 时间限制:1.0s   内存限制:512.0MB     问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列.1<=n<=200 输入格式 第一行为一个整 ...

  5. lqb 基础练习 闰年判断

    基础练习 闰年判断 时间限制:1.0s   内存限制:256.0MB     问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍 ...

  6. lqb 基础练习 01字串 (itoa)

    基础练习 01字串 时间限制:1.0s   内存限制:256.0MB     问题描述 对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能.它们的前几个是: 00000 00001 0 ...

  7. lqb 基础练习 字母图形 (循环)

    基础练习 字母图形 时间限制:1.0s   内存限制:256.0MB     问题描述 利用字母可以组成一些美丽的图形,下面给出了一个例子: ABCDEFG BABCDEF CBABCDE DCBAB ...

  8. lqb 基础练习 数列特征

    基础练习 数列特征 时间限制:1.0s   内存限制:256.0MB     问题描述 给出n个数,找出这n个数的最大值,最小值,和. 输入格式 第一行为整数n,表示数的个数. 第二行有n个数,为给定 ...

  9. lqb 基础练习 查找整数 (遍历)

    基础练习 查找整数 时间限制:1.0s   内存限制:256.0MB     问题描述 给出一个包含n个整数的数列,问整数a在数列中的第一次出现是第几个. 输入格式 第一行包含一个整数n. 第二行包含 ...

随机推荐

  1. jquery的返回顶端的功能实现

    页面很长的时候,读到最下面,需要返回顶端,则在页面最下面布局一个返回顶部的图标很有用. 具体功能是,jquey控制,向下滚动出现返回顶部图片,若滚动返回顶部或点回顶部,则图标消失. 实现效果如下图:

  2. 一起来看一下Java中的Annotation注解

    目录: 一. 什么是Annotation 二. Annotation的作用 2.1 编译器使用到的注解 2.2 .class文件使用到的注解 2.3 运行期读取的注解 三. 定义Annotation ...

  3. boost::asio::io_service::定时器任务队列

    使用io_service和定时器写的一个同步和异步方式的任务队列 #pragma once #include <string> #include <iostream> #inc ...

  4. UI测试之元素定位

    定位方式优先级选择:  ID>Name>CSS>XPath 1.使用id定位 2.使用name定位 3.使用class定位 4.使用css选择器定位 示例xml: <?xml ...

  5. 18.Linux磁盘管理

    1.磁盘分区工具fdisk 1. 添加一块小于2TB的磁盘进行使用,步骤如下: 给虚拟机添加一块新的硬盘 使用fdisk进行分区 使用mkfs进行格式化 使用mount进行挂载 PS: 生产分区建议, ...

  6. Mysql面试题及千万级数据查询优化

    今天在说Mysql查询优化之前,我先说一个常见的面试题,并带着问题深入探讨研究.这样会让大家有更深入的理解. 一,Mysql数据库中一个表里有一千多万条数据,怎么快速的查出第900万条后的100条数据 ...

  7. 用Python新建用户并产生随机密码

    说明:本次代码是在Linux下执行的,windows也可以用,把添加用户密码的命令改成windows的就ok了 用Python新建用户并产生随机密码 import passwd_name as pn ...

  8. 设计模式(十六)Mediator模式

    在实际的工作小组的交流过程是,组员向仲裁者报告,仲裁者向组员下达指示,组员之间不再互相询问和指示.Mediator模式是指,当发生麻烦事情的时候,通知仲裁者:当发生涉及全体组员的事情时,也通知仲裁者. ...

  9. js自增图片切换

    使用js自增进行图片的切换 <!DOCTYPE html> <html lang="zh"> <head> <meta charset=& ...

  10. python实现人工智能Ai抠图功能

    这篇文章主要介绍了python实现人工智能Ai抠图功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 自己是个PS小白,没办法只能通过技术来证明自己. 话不多说, ...