抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

Hello World

人よ、幸福に生きろ!

前言 本次作业的内容是对上一次作业中的BVH遍历、射线三角形求交Möller-Trumbore算法进行迁移,以及在此基础上实现完整的 Path Tracing 算法。 请注意: 本次作业基于dalao的GAMES101作业框架,在Windows系统上实现。 函数迁移 Bounds3::IntersectP in Bounds3.hpp 本次作业中 cornell box 模型的墙壁和箱...
CG

种类 像素图 也叫位图,是用像素点阵列拼合的图像。 通过捕捉得到的图像(如拍摄、截图)都是像素图。 像素图在放大一定程度后都会出现模糊。 常见的像素图格式包括:JPEG、PSD、PNG、TIFF 矢量图 是使用点线面构成的图像。 矢量图往往是使用矢量软件绘制得到的。 点线面都是数学化的,因此放大后不会模糊。 常见的矢量图格式包括:AI、EPS、SVG 格式 JPEG(JPG) Joi...

vector 可以用下标[]直接访问 初始化大小后为非动态数组 12vector<int> v(n, 1);// v[0] 到 v[n - 1]所有的元素初始值均为1 //注意:指定数组长度之后(指定长度后的数组就相当于正常的数组了) 方法函数 方法 时间复杂度 v.front() O(1) v.back() O(1) v.pop_back() O(...

以下为gpt4o的解答: 灌溉机器人 好的,我来帮你解析一下这段代码中的四重循环。 这段代码的目的是在网格中放置大炮,要求大炮不能放置在两个相邻的格子里(包括对角线相邻)。代码使用了压缩状态动态规划(DP)的方法来解决这个问题。 核心部分解析 数据结构和前置处理 mp[105]: 用来存储每一行格子的状态,若某格子为障碍(‘H’),则对应位置为1。 state[105]: 用来存储所...

内存的分配和释放在堆(Heap)上完成 void * ptr = malloc (size) free(ptr) Stack分配是连续的,因为不需要管理。 Heap是按照size大小分配的,不是连续的。 1234567int* a1 = malloc (1000 *sizeof(int));int* a2 = malloc (100 *sizeof(int));int b[1000];i...
C

引入 Diffusion Model是如何运作的 就像把石头雕刻成雕塑,DiffusionModel是将一张充满噪声(noise)的图片不断Denoise最后生成图片的过程 Denoise模组内部实际做的事情 在遇到一个图片的Denoise过程的时候,先计算出噪声的严重程度,然后推断出需要消去的噪声(这个在训练模型的时候的step),最后一步步生成图片 类似于一种自我监督的训练...

定位 ^ :匹配行首或正则表达式搜索的字符串的开头 $ :匹配行尾或正则表达式搜索的字符串的末尾 元字符 . :匹配除新行以外的任意单个字符 | :表示备选项,即“或” \ :表示下一个是文字字符,而非特殊字符 字符类 […] :匹配某一字符集中的任意字符。在字符集中可使用短划线分隔第一个字符和最后一个字符 [^…] :匹配某一字符集以外的任意字符 内容合规性政策中的正则表达式区分大小写 [...

VIMTUTOR Lesson 1 SUMMARY The cursor is moved using either the arrow keys or the hjkl keys. h (left) j (down) k (up) l (right) To start Vim from the shell prompt type: vim FILENAME &...

二叉搜索树 Treap树 每个结点有2个值 键值:value 优先级:priority value要满足BST的基本性质,priority用于满足堆的性质,用来实现二叉树的平衡 Treap通过随机化的priority属性,以及维护堆性质的过程,[打乱]了结点的插入顺序。从而让二叉搜索树达到了理想的复杂度,避免了退化成链的问题 利用Treap可以实现一个名次树而且比红黑树好写很...

基础 程序 ISO C++标准中定义了两种实体: 核心语言特性.i.e.内置类型(char,int).循环(for,while) 标准库组件.i.e.容器(vector,map).输入输出操作(<<,getline) C++是一种静态语言。这意味着,每一个实体(对象、值、名称和表达式等)被使用的那一刻,编译器必须知道其准确的类型。 1int main(){&...