大一软工第六周学习总结
大一软工第六周学习总结学习内容 Java看完黑马程序员网课后写了一个华容道小游戏。 在我校ACM校队招新期间,学长安排我们做每日两题,目前进行了10次,一共21道题,本周13题: P8598 [蓝桥杯 2013 省 AB] 错误票据 P1106 删数问题 P1047 [NOIP 2005 普及组] 校门外的树 P2367 语文成绩 P1143 进制转换 P1035 [NOIP 2002 普及组] 级数求和 P1090 [NOIP 2004 提高组] 合并果子 P1051 [NOIP 2005 提高组] 谁拿了最多奖学金 P1055 [NOIP 2008 普及组] ISBN 号码 P3397 地毯 P13787 地毯 加强版 P1093 [NOIP 2007 普及组] 奖学金 P1007 独木桥 本周,我学习了40页的C++Primer,目前到了P61。 学习了几个简单常见的算法,并做了笔记和例题。 [一维差分数组](一维差分笔记与例题 | 欢迎来到阿叶Ayeez的个人主页) [优先队列](优先队列笔记与例题 | 欢迎来到阿叶Ayeez的个人主页) [二维前缀和、二维差分数组]...
二维前缀和、二维差分
二维前缀和二维前缀和可以快速查询二维数组任何范围上的元素累加和。如下图红色区域总和为:10我们就可以使用二维前缀和得到。下面先讲使用方法: 先将原数组复制一份 对每一个元素进行遍历,将遍历到的元素=(元素的左边一个元素)加(上面一个元素)减去(左上角的一个元素)加上(元素自己本身)。如图: 即”左加上加左上减,加自己“ 那么如果我们想得到红色框里面的元素总和,我们只需要用新数组(下图)的绿色-蓝色1-蓝色2+紫色 12-1-2+0=9那么原理呢?下图:(容斥原理)新数组中的元素代表什么呢?从左上角到元素的区域累加和。我们的数组按箭头顺序遍历,那么遍历到了问号的时候,前面的部分数组都已经是更改后的了,那么上述式子则表示绿色区域总和-蓝色区域1总和-蓝色区域2总和+重复的紫色区域总和,结果等于红色区域的总和 总结性笔记 目前是预处理出一个结构,以后每次查询二维数组任何范围上的累加和都是O(1)的操作1.根据原始状况,生成二维前缀和数组sum, sum[i][j]:代表左上角(0,0)到右下角(i,j)这个范围的累加和 sum[i][j]+=sum[...
洛谷做题记录
2025.10.11 P1007 独木桥 题目背景战争已经进入到紧要时间。你是运输小队长,正在率领运输部队向前线运送物资。运输任务像做题一样的无聊。你希望找些刺激,于是命令你的士兵们到前方的一座独木桥上欣赏风景,而你留在桥下欣赏士兵们。士兵们十分愤怒,因为这座独木桥十分狭窄,只能容纳 $1$ 个人通过。假如有 $2$ 个人相向而行在桥上相遇,那么他们 $2$ 个人将无法绕过对方,只能有 $1$ 个人回头下桥,让另一个人先通过。但是,可以有多个人同时呆在同一个位置。 题目描述突然,你收到从指挥部发来的信息,敌军的轰炸机正朝着你所在的独木桥飞来!为了安全,你的部队必须撤下独木桥。独木桥的长度为 $L$,士兵们只能呆在坐标为整数的地方。所有士兵的速度都为 $1$,但一个士兵某一时刻来到了坐标为 $0$ 或 $L+1$ 的位置,他就离开了独木桥。 每个士兵都有一个初始面对的方向,他们会以匀速朝着这个方向行走,中途不会自己改变方向。但是,如果两个士兵面对面相遇,他们无法彼此通过对方,于是就分别转身,继续行走。转身不需要任何的时间。 由于先前的愤怒,你已不能控制你的士兵。甚至,你连每个士兵初...
优先队列笔记与例题
优先队列优先队列的本质是一个堆(用数组模拟一颗完全二叉树)可以拿出优先级最大的元素头文件<queue>优先级最高的都在顶端(堆顶元素) 12345678910111213int main(){ priority_queue<int> que; //默认大根堆(大顶堆)(数字越大,优先级越高),比较方法less<int> priority_queue<int,vector<int>,greater<int>> que;//参数二是什么容器装,参数三是比较方法,变成小根堆(小顶堆)需要指定node类型,只能重载小于号 struct node{ int x,y; bool operator<(const node &b)const{ return this->x <b.x;//重载小于号less,大的数还是优先级更高,若重载大于号,小的数优先级更高 } } } que.size() 堆的元素个数que.push()...
一维差分笔记与例题
背景当你有一个数组,你要频繁地向里面的不同区间的数字进行加减的操作,比如说{3,1,4,1,5,9},你要向[0,2]减去二,变成{1,-1,2,1,5,9},然后向[1,3]加上2,变成{1,1,4,3,5,9},然后向[4,5]减去4变成{1,1,4,3,1,4},然后向[3,3]减去2……??????当这种操作数量足够多,需要频繁的区间更新,如果我们使用简单的遍历,对这些数字进行加减,那速度会非常慢。 解决方案使用一维差分 差分数组:对于一个给定的原始数组 nums,我们构造一个相同长度的差分数组 diff,其中:对要操作的区间开始的数字进行操作,对操作结束后的数字进行反向操作。作为一个差分数组diff,记录区间更新,在全部操作结束后,我们只需要对原数组进行一次遍历,让diff的后一位,累加到原数组里面,那么在区间内所有的数都会受到diff影响,在区间后,由于diff的反向操作,会抵消掉区间更新。 例题洛谷 P2367 语文成绩题目背景语文考试结束了,成绩还是一如既往地有问题。 题目描述语文老师总是写错成绩,所以当她修改成绩的时候,总是累得不行。她总是要一遍遍地给某些同学增...
大一软工第五周学习总结(国庆周)
大一软工第五周学习总结(国庆周)学习内容 Java在写一个华容道的小游戏,目前写了一半,还没有想出来如何解决华容道无解的问题,目前由于有其他计划,Java学习的速度减缓。 在我校ACM校队招新期间,学长安排我们做每日两题,目前进行了5次,一共8道题: B2002 Hello,World! P1046 [NOIP 2005 普及组] 陶陶摘苹果 P8680 [蓝桥杯 2019 省 B] 特别数的和 P8598 [蓝桥杯 2013 省 AB] 错误票据 P8706 [蓝桥杯 2020 省 AB1] 解码 P1115 最大子段和 P1106 删数问题 P8637 [蓝桥杯 2016 省 B] 交换瓶子 其实刚开始写这些东西挺苦恼的,再加上我没有学习c的基础上我直接用c语言写题。(我的代码在我的网站上都能找到,全丢上去了,排版我觉得还行,我自己能根据想要的题目很快找到我写的代码,旁边有快捷目录的) 相应的,我看了三十来页的C语言程序设计基础(慕课版) 在深思熟虑后,我停下了这个动作,转去看C++primer第五版,看了二十多页 假期我花了比较多的时间在我的网站上面,添加了内容。 总...
我的第一次厚涂
第一次尝试厚涂,虽然……但已经很满意了(耶… 当然也可以来bilibili看我的绘画过程视频,感谢你的支持!
画画记录
画画记录25.10.03我的第一次厚涂 25.10.01魈线稿成图 25.9.30晚在宿舍的草稿(魈) saber成图 阿尔托莉雅·潘德拉贡saber 不知道多久以前画的麻衣学姐 不知道多久以前画的可莉
大一软工第四周学习总结(正课第二周)
大一软工第四周学习总结(正课第二周)正课内容高数课: 无穷小和无穷大 极限运算法则 极限存在准则 两个重要极限 无穷小的比较 函数的连续性和间断点计算机导论:一些python基础代码,上机课就自己敲程序设计基础:一些c语言基础代码,上机课就自己敲,有些简单算法题写了些这周课程内容已经步入正轨了,只是刚开始学,内容非常简单。 课外内容 继续复习Java基础,学习了面向对象相关知识: static 继承 多态 包 final 权限修饰符 代码块 抽象类 接口 内部类 每天都听了一些英语听力 一个朋友推荐了计算机导论的cs50课程,我其他东西学累了就看看,感觉很有意思 总结与想法我的学习和生活的节奏稳定了下来,学习效率变高了 后续计划我们学校有ACM校队和爪哇部落算法部招新,考核有五轮,但是要求c++,我有意愿想要加入,所以打算阶段性的中断我的Java学习计划,同步搞一下c/c++和算法。招新那边的学长学姐推荐了一本书,C语言慕课版的。好在只是计划有点中断,并没有打乱,后续我任然打算在下个学期开始前学完Java大部分的技术栈
大一软工第三周学习总结(正课第一周)
大一软工第三周学习总结(正课第一周)正课内容高数课:复习了函数相关知识、学习了数列的极限、函数的极限计算机导论:就讲了一点计算机组成相关的知识,还有一些学习方法程序设计基础:一些前置知识,然后上机用c写了几个简单的程序总体来说,第一次上正课,基本上都没有讲多少内容,计算机导论和程序设计基础的内容和已有知识基本重复。 课外内容 继续复习Java基础,学习了String,ArrayList类包括构造,常用方法以及对应的底层原理相关知识。 利用现有的前端框架部署了一个个人网站,并在上面发blog。 学习了git的基本用法(以后会把写的代码,包括垃圾代码文件一坨一坨地丢上去) 用c写了一些经典地算法题来熟悉语法 总结与想法第一次上这些正课,感觉和预期相比相差较大,有种课堂利用率过于低下的感觉,不过第一节课基本上都在讲学习方法,课程介绍。自学部分效率比较正常,学习时间正常。 后续计划总体上和上次差别不大,但是由于这一周接触的想法比较多,会有一点动摇,我可能会在java二刷多一小段时间后同步进行算法的学习与练习。目前打算看哔哩哔哩左程云的视频https://space.bilibili.c...