triangle

[LeetCode] 118. Pascal's Triangle 杨辉三角

半世苍凉 提交于 2020-12-12 04:38:29
Given numRows , generate the first numRows of Pascal's triangle. For example, given numRows = 5, Return [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] 杨辉三角形 ,又称 贾宪三角形 、 帕斯卡三角形 、 海亚姆三角形 、 巴斯卡三角形 ,是 二项式系数 在的一种写法,形似三角形,在中国首现于 南宋 杨辉 的《 详解九章算术 》得名,书中杨辉说明是引自 贾宪 的《 释锁算术 》,故又名贾宪三角形。前 9 行写出来如下:         1        1 1       1 2 1      1 3 3 1     1 4 6 4 1    1 5 10 10 5 1   1 6 15 20 15 6 1  1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 杨辉三角形第 层(顶层称第 0 层,第 1 行,第 层即第 行,此处 为包含 0 在内的自然数)正好对应于二项式 展开的系数。例如第二层 1 2 1 是幂指数为 2 的二项式 展开形式 的系数。 解法:每一行的首个和结尾一个数字都是1,从第三行开始,中间的每个数字都是上一行的左右两个数字之和。 Java: public class

LeetCode 118 杨辉三角 HERODING的LeetCode之路

别等时光非礼了梦想. 提交于 2020-12-09 16:45:35
给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。 在杨辉三角中,每个数是它左上方和右上方的数的和。 示例: 输入: 5 输出: [ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ] 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/pascals-triangle 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。 解题思路: 思路很简单,分为第一行处理,和非第一行处理,第一行就直接一个输出完事,其他行首先首尾加上1,中间部分用上一行来填充,代码如下: class Solution { public : vector < vector < int >> generate ( int numRows ) { vector < vector < int >> ans ; for ( int i = 0 ; i < numRows ; i ++ ) { vector < int > res ( i + 1 ) ; // 如果是第一行 if ( i == 0 ) { res [ 0 ] = 1 ; } else { res [ 0 ] = res [ i ] = 1 ; // 中间部分利用上一层填充 for ( int j = 0 ; j < i - 1

《极客时间--算法面试》--动态规划

岁酱吖の 提交于 2020-12-06 02:29:02
题目: 70、爬楼梯 思路:   一、采用回溯法,递归+记忆化   二、采用动态规划,时间复杂度为O(n),采用递推的方式     要找到DP的状态和DP方程。    代码(动态规划): class Solution(object): def climbStairs(self, n): """ :type n: int :rtype: int """ ''' 方式一:传统的方式 if n==0 or n==1 or n==2: #边界值判定 return n men = [1,2] #递推初始值 for i in range(2,n): #从第二个开始到最后 men.append(men[i-1]+men[i-2]) #将前面两个值相加最为后一个值 return men[n-1] #返回最后的一个结果 ''' ''' 方式二:python的编码方式较为简洁,直接赋值的 ''' x,y = 1,1 for _ in range(1 ,n): x,y = y,x+ y return y 题目: 120、三角形最小路径和 思路:   一、回溯   二、动态规划     从底层倒推,明确状态转移方程和初始状态。     初始状态是最后一层,转移方程是相邻节点的最小值和当前值相加作为下一个状态的值。 代码: class Solution(object): def minimumTotal

Rendering in UE4(Gnomon School UE4 大师课笔记)

一曲冷凌霜 提交于 2020-12-05 22:07:34
Rendering in UE4 Presented at the Gnomon School of VFX in January 2018, part two of the class offers an in-depth look at the rendering pipeline in Unreal Engine, its terminology and best practices for rendering scenes in real-time. This course also presents guidelines and profiling techniques that improve the debugging process for both CPU and GPU performance. 分7个部分介绍UE4中的渲染管线。 Index 1.Intro 2.Before Rendering 3.Geometry Rendering 4.Rasterizing and Gbuffer 5.Dynamic Lighting/Shadows 6.Static Lighting/Shadows 7.Post Processing 1.INTRO Everything needs to be as efficient as possible Adjust

Python杨辉三角

删除回忆录丶 提交于 2020-11-23 23:52:12
杨辉三角,是 二项式系数 在三角形中的一种几何排列,在中国南宋数学家 杨辉 1261年所著的《 详解九章算法 》一书中出现。在欧洲, 帕斯卡 (1623----1662)在1654年发现这一 规律 ,所以这个表又叫做 帕斯卡三角形 。帕斯卡的发现比 杨辉 要迟393年,比 贾宪 迟600年 第一种解决方法: 1.一次性开辟每行的内存空间 2.利用对称性解决 triangle = [] n = 6 for i in range(n): # row 定义了left的1 ,索引第二层循环的范围就是i,第0行0个值,第一行1个值,第二行2个值 row = [1 ] # 此层循环每层的个数,抛除已经定好的1,当2行i=1,k=0.实际一个空位 # k=i-1的时候填充1,不等的时候填充0 for k in range(i): if k == i-1 : row.append( 1 ) else : row.append(0) # 每行都是1 然后append到triangle,因为列表调用列表,所以更改row就好了(浅copy) triangle.append(row) # 特殊情况,当i=0的时候 跳过本次循环,进行下一次循环i = 1 if i == 0: continue # 找对称,前2行特殊情况,i=0 or i=1 带入此循环不执行,第三行的时候就对称只有一个,第四行的时候 #

python实现杨辉三角

那年仲夏 提交于 2020-11-23 08:50:36
刚刚学python,原来用c++,Java很轻松实现的杨辉三角,现在用python实现,代码是少了,理解起来却不容易啊。 这里主要用到的Python的生成器。 我们都知道Python有列表解析功能,根据表达式可以自动生成列表,如: # 这样就得到了0-9这几个数的平方 my_list = [x**2 for x in range(10 )] print (my_list) # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] print (type(my_list)) # <class 'list'> 但是列表的大小受内存的限制,如果我们能记录产生数据的算法,那么就不用构造完整的列表,只需要边循环边产生数据。 下面就来创建一个简单的生成器: # 创建一个简单的生成器 gen = (x * x for x in range(10 )) print (type(gen)) # <class 'generator'> for item in gen: print (item, end= " " ) # 0 1 4 9 16 25 36 49 64 81 除了用for遍历生成器对象,还可以用next()函数进行遍历 # 创建一个简单的生成器 gen = (x * x for x in range(10 )) print (type(gen)) # <class

给div添加onClick事件

心已入冬 提交于 2020-11-21 01:50:00
1 <! DOCTYPE html > 2 < html > 3 < head > 4 < title > click_div </ title > 5 < meta charset ="utf-8" > 6 7 < style type ="text/css" > 8 .triangle1 { 9 width : 0 ; 10 height : 0 ; 11 border-width : 10px ; 12 border-style : solid ; 13 border-color : #bbb transparent transparent transparent ; 14 /* border-color: transparent transparent #bbb transparent; */ 15 display : inline-block ; 16 vertical-align : middle ; 17 } 18 .triangle2 { 19 width : 0 ; 20 height : 0 ; 21 border-width : 10px ; 22 border-style : solid ; 23 /* border-color: #bbb transparent transparent transparent; */ 24 border-color :

[译]Vulkan教程(15)图形管道基础之RenderPass

烂漫一生 提交于 2020-10-25 11:29:00
[译]Vulkan教程(15)图形管道基础之RenderPass Render passes Setup 设置 Before we can finish creating the pipeline, we need to tell Vulkan about the framebuffer attachments that will be used while rendering. We need to specify how many color and depth buffers there will be, how many samples to use for each of them and how their contents should be handled throughout the rendering operations. All of this information is wrapped in a render pass object, for which we'll create a new createRenderPass function. Call this function from initVulkan before createGraphicsPipeline . 在创建管道收工前,我们需要告诉Vulkan,渲染时要使用哪些帧缓存附件

2020-5-16CF反思

梦想与她 提交于 2020-10-24 16:51:16
CF凉了是显然的,不然也不会写这篇反思了。 开题很快 A C AC A C 了 A A A 和 B B B 。 到了 C C C 的时候定睛一看 Like any unknown mathematician, Yuri has favourite numbers: A , B , C A, B, C A , B , C and D D D , where A ≤ B ≤ C ≤ D A≤B≤C≤D A ≤ B ≤ C ≤ D . Yuri also likes triangles and once he thought: how many non-degenerate triangles with integer sides x , y x, y x , y and z z z exist, such that A ≤ x ≤ B ≤ y ≤ C ≤ z ≤ D A≤x≤B≤y≤C≤z≤D A ≤ x ≤ B ≤ y ≤ C ≤ z ≤ D holds? Yuri is preparing problems for a new contest now, so he is very busy. That’s why he asked you to calculate the number of triangles with described property. The

[译]为任意网格计算tangent空间的基向量

∥☆過路亽.° 提交于 2020-10-24 14:43:18
+BIT祝威+悄悄在此留下版了个权的信息说: [译]为任意网格计算tangent空间的基向量 Computing Tangent Space Basis Vectors for an Arbitrary Mesh (Lengyel’s Method) Modern bump mapping (also known as normal mapping) requires that tangent plane basis vectors be calculated for each vertex in a mesh. This article presents the theory behind the computation of per-vertex tangent spaces for an arbitrary triangle mesh and provides source code that implements the proper mathematics. +BIT祝威+悄悄在此留下版了个权的信息说: 现代凹凸映射(也被称为法线映射)要求为网格中的每个顶点计算出其tangent平面基向量。本文描述了对任意三角形网格计算逐顶点tangent空间的数学理论,还提供了实现数学计算的源代码。 Mathematical Derivation 数学推导 [This