大家好鸭~今天继续给大家带来竞赛真题:杨辉三角形。

介绍:

杨辉三角形,又称为帕斯卡三角形,是一种数学形式,由数字三角形组成,其特点是每个数字是其上面两个数字的和。杨辉三角形的第一行只有一个数字 1,从第二行开始,每一行的首尾数字也是 1,而其余数字是上一行相邻两个数字之和。下面就是一个杨辉三角形示例:

   11 11 2 1
1 3 3 1

题目:

给出一个整数N,要求输出N层的杨辉三角形。

题目:

我们可以用嵌套数组来实现(严格来说不能说成是二维数组),首先将第一层直接赋值为{1},第二层赋值为{1, 1},后面N-2步,首先将此层的前后两个数赋值成1,中间夹着的所有数字都取上一层与之对应的两个数字相加的和为值。

Python代码:

AC代码:

def generate_pascal_triangle(numRows):triangle = []for i in range(numRows):row = [1] * (i+1)for j in range(1, i):row[j] = triangle[i-1][j-1] + triangle[i-1][j]triangle.append(row)return triangle# 输出前10行杨辉三角形
triangle = generate_pascal_triangle(10)
for row in triangle:print(row)

C++代码:

AC代码

#include <iostream>
#include <vector>using namespace std;vector<vector<int>> generate_pascal_triangle(int numRows) {vector<vector<int>> triangle;for (int i = 0; i < numRows; i++) {vector<int> row(i+1, 1);for (int j = 1; j < i; j++) {row[j] = triangle[i-1][j-1] + triangle[i-1][j];}triangle.push_back(row);}return triangle;
}int main() {// 输出前10行杨辉三角形vector<vector<int>> triangle = generate_pascal_triangle(10);for (auto row : triangle) {for (auto element : row) {cout << element << " ";}cout << endl;}return 0;
}

C代码:

AC代码

#include <stdio.h>void insertion_sort(int arr[], int n) {for (int i = 1; i < n; i++) {int key = arr[i];int j = i - 1;while (j >= 0 && arr[j] > key) {arr[j+1] = arr[j];j = j - 1;}arr[j+1] = key;}
}int main() {int arr[] = {5, 2, 4, 6, 1, 3};int n = sizeof(arr) / sizeof(arr[0]);insertion_sort(arr, n);for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;
}

Java代码:

import java.util.Arrays;public class InsertionSort {public static void insertionSort(int[] arr) {for (int i = 1; i < arr.length; i++) {int key = arr[i];int j = i - 1;while (j >= 0 && arr[j] > key) {arr[j+1] = arr[j];j = j - 1;}arr[j+1] = key;}}public static void main(String[] args) {int[] arr = {5, 2, 4, 6, 1, 3};insertionSort(arr);System.out.println(Arrays.toString(arr));}
}

JS代码:

AC代码

function generatePascalTriangle(numRows) {let triangle = [];for (let i = 0; i < numRows; i++) {let row = Array(i + 1).fill(1);for (let j = 1; j < i; j++) {let num = triangle[i-1][j-1] + triangle[i-1][j];row[j] = num;}triangle.push(row);}return triangle;
}let triangle = generatePascalTriangle(10);
for (let row of triangle) {console.log(row);
}

Go代码:

AC代码:

package mainimport "fmt"func generatePascalTriangle(numRows int) [][]int {triangle := make([][]int, numRows)for i := 0; i < numRows; i++ {row := make([]int, i+1)for j := 0; j < i+1; j++ {row[j] = 1}for j := 1; j < i; j++ {num := triangle[i-1][j-1] + triangle[i-1][j]row[j] = num}triangle[i] = row}return triangle
}func main() {triangle := generatePascalTriangle(10)for _, row := range triangle {fmt.Println(row)}
}

竞赛真题:杨辉三角形相关推荐

  1. 第十一届蓝桥杯青少组Python竞赛真题

    第十一届蓝桥省赛Python组复盘 第十一届蓝桥省赛Python组复盘_哔哩哔哩_bilibili 蓝桥杯青少组Python竞赛真题讲解 蓝桥杯青少组Python竞赛真题讲解_哔哩哔哩_bilibil ...

  2. 2021云计算技能竞赛真题卷(附标准答案)

    2021云计算技能竞赛真题卷 "云计算技术与应用"S卷 场景描述 一.目标任务 某企业拟搭建私有云平台,以实现资源池化弹性管理.企业应用集中管理.统一安全认证和授权等管理.试按照赛 ...

  3. 2019年上海市数学建模讲座笔记(1)竞赛真题讲解

    <竞赛真题> 2018年国赛A题讲解:<数学建模及其应用>杂志,第一期,复旦大学蔡志杰老师 关于选题 竞赛规则的变化 开始时间:礼拜四,9.12晚上6点开始.下载题目 去年40 ...

  4. 【信息学竞赛真题! ! !】信息学竞赛人必看的「NOIP2011」铺地毯 题解(C++版)

    Hi,朋友们.又见面了.上次我们做了一道美国题,这次我们来干一道"国产"题目 文章目录 A.题目描述 B.初步分析 如果使用二维数组-- C.改进算法 D.补充模块 1.喜闻见乐的 ...

  5. 第31届国际信息学奥林匹克竞赛真题-2019-

    中学生信息学最大规模国际赛事: IOI2019官网 28枚金牌 中文版真题 1-1 1-2 1-3 2-1 2-2 2-3 3-1 3-2 3-3 4-1 4-2 4-3 4-4 5-1 5-2 5- ...

  6. CTFWeb-BUUCTF竞赛真题WriteUp(1)

    文章目录 前言 No.1 极客挑战-Sql注入万能密码 No.2 极客挑战-PHP伪协议利用 No.3 ACTF- PHP的弱比较类型 No.4 BJDCTF-MD5的弱/强碰撞 No.5 强网杯-P ...

  7. 电子学会scratch竞赛真题三级真题19年12月真题(含线上题库答题软件)

    如在线答题自我考试测验,请点击 https://blog.csdn.net/zhengzyx2040/article/details/118388826 一.单选题(共25题,每题2分,共50分) 1 ...

  8. 电子学会scratch竞赛真题三级真题19年9月真题(含线上题库答题软件)

    电子学会青少年编程考级模拟训练,请点击 https://blog.csdn.net/zhengzyx2040/article/details/118388826 一.选择题(共25题,每题2分,共50 ...

  9. 【蓝桥杯】历届真题 杨辉三角形 (省赛)Java

    [问题描述] 下面的图形是著名的杨辉三角形: 如果我们按从上到下.从左到右的顺序把所有数排成一列,可以得到如下数列: 1,1,1,1,2,1,1,3,3,1,1,4,6,4,1,... 给定一个正整数 ...

最新文章

  1. Registry仓库Harbor的部署与简介
  2. LVS的工作原理和相关算法
  3. PS 图像尺寸|点阵格式图像|矢量格式图像|图像格式的选择
  4. ASP.NET MVC随想录——漫谈OWIN
  5. PyYAML——yaml.load()警告【YAMLLoadWarning: calling yaml.load() without Loader=... is deprecated】解决方案
  6. 收集实用的MySQL使用技巧
  7. WebAPI前置知识:HTTP与RestfulAPI
  8. 工作10年厌倦写代码_厌倦了数据质量讨论?
  9. 前端学习(3027):vue+element今日头条管理-关于图标的处理
  10. hdu3526(最小费用流)
  11. 创业者需要知道的50句话
  12. 【C语言】在线OJ题 BC72-BC87-牛客网编程初学者入门训练
  13. 高仿富途牛牛-组件化(五)-如何去管理炒鸡多的小窗口
  14. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_4-1.单机和分布式应用的登录检验讲解...
  15. mysql8 连接不上数据库_MySQL升级8.0后连接不上数据库
  16. 一份很棒的外设驱动库(基于STM32F4)
  17. C#导入导出MPP文件(PROJECT)
  18. CALLBACK / 回调(diao)
  19. 快速渡河(贪心算法)
  20. 【梁小国】教你怎么签自己的名字

热门文章

  1. 苹果征战PC市场胜算难定(转)
  2. redis存取list集合
  3. HashMap原理简述
  4. 进程线程(一)——基础知识,什么是进程?什么是线程?
  5. 对于%nd的使用标准
  6. 不越狱可以安装多个微信吗?教你不越狱安装多个微信技巧
  7. mmseg中的评价指标
  8. 安卓数据转移到iphone老是中断_旧iPhone数据如何转移新iPhone里面
  9. Excel中插入自定义数据地图
  10. @JsonFormat 时区不对