- 博客(73)
- 收藏
- 关注
原创 校园卡系统(需调试)
中间添加很多功能但是最后没有实现,需要自己调#include<iostream>#include<cstring>using namespace std;class Student{private: string sno;//学号 string sname;//姓名 int sage;//年龄 string slo;//地址 int ssex;//0男,1女 string stell;//电话 string sQQn;
2021-04-10 10:05:25
241
原创 21-3-20 总结
这周课排的比较紧,做题数量有所下降,但也做了几个限时,发现之前能做出来的难度的题现在竟然做不出来了,amazing!大概是因为训练量的下降还有做题水平的下降吧,周六做了牛客网那个比赛,效果不是很好,之前跟lct一块做过限时,然后觉得他学的东西好多,感觉他用了好多我都不知道的东西,然后给我推荐atcoder上一个练习,可以刷前面的题,我打算就下周吧,争取一天做一个比赛,是在时间不够就做半个,唉,总得有所改变不是吗。其实我的重点还是在数学上,但是看看别的算法也可以加深对各种东西的了解。下周加油!!...
2021-03-20 23:11:06
171
原创 21-02-09 寒假总结
年前这段时间主要做了数学方面,期间还涉及包括动态规划,字符串,甚至数据结构的一些内容,做题大概做了五十来到题吧,期间做了几个限时,感觉收益不算很好,还有好几个限时做题打不开,太难过了。唉,继续加油吧!...
2021-02-09 20:48:59
109
原创 02-06 寒假训练总结6
昨天晚上CF有点事没做,今天下午的VJudge网页没打开,简直了。这周还是主要做了数学方向,决定下星期换一个,轮着换一下思路,下周加油!!
2021-02-06 22:25:58
117
原创 01-30 寒假训练总结4
最近还是做了数学部分,然后还做了几个比赛,做的不是很好,还是在题上会有一些考虑不到的点,就导致一直A不过去,就有点难过其实,继续加油吧,多在限时比赛里练练速度,冲冲冲!!!...
2021-01-30 22:45:51
94
原创 21-1-27 寒假训练总结3
这周还是做了数学有关的内容,codeforces上的题因为我弟要考试,得起来做饭所以div3就没做,等找一天补上。洛谷上我是顺着做的,所以知识点比较零散,下星期继续加油,冲冲冲!!!
2021-01-27 22:20:51
109
原创 21-01-20 寒假训练总结1
这周刚回家不久,出去串了好几家门,最近在做洛谷上的数学部分,因为这部分比较好考虑也比较训练脑子,这几天林林总总大概写了11个题,要开始写题解了,光做题还是不太够。这次总结不够充分,下次一定。...
2021-01-20 22:58:45
131
原创 21-1-16
洛谷P5087 数学动态规划,本来是想找个公式啥的看看一个数能加几次,但是也没找到比较好的方法,动态规划是比较好像到的,写了写发现也可以。#include <bits/stdc++.h>#define int long longusing namespace std;const int mod = 1000000007LL;int n, f[310][100010], k, a[100010];signed main() { scanf("%lld%lld",
2021-01-17 14:46:56
111
原创 训练总结(大二上)
从暑假回来之后又开始ACM学习之路,说是为了ACM其实我觉得更重要的是学习算法提高思维,提高对于计算机语言的敏感度。其实还是自己太菜了,说比赛根本没有什么表示和突破,而且实力确实不过关这学期学了一本通提高篇,主要的还是看的书上的内容,但是相比较之前来说也是做了很多题,虽还是有的Part没有融会贯通,只会模板(而且打的贼慢),但是相比较而言还是有所进步。重点的学了数据结构,动态规划,还有数学的部分,是很难,很用脑子,但是坚持下来总是有收获的。CF上也终于开始有上升趋势,跟大佬还是不能比,我也能感觉到好
2020-12-22 20:49:48
207
1
原创 20-12-20大二第十六周
马上这学期就结束了,各科都到开始准备考试的阶段了,特别是下周考的数字逻辑跟数据结构,这周学习了图论里面最小生成树部分,其实也是因为马上要考数据结构,复习的同时还可以提高技巧。除了图论之外,还在洛谷上做了几道数据结构题,其实要说全部自己手打代码还是有一点点困难,但是别人能做到那我也一定可以。最小生成树的算法一个是加点,还有一个是加边,单单是看平面图,自己画的话要逻辑性更强一些,到了代码上就没办法看那个还没加入啊啥的就需要一些特殊手段,Prim算法在选择加入点的时候是将边的权值建成堆,方便移动和比较,K
2020-12-20 21:46:19
110
原创 20-12-13大二第十五周
这周有个四六级考试奈何我没报上名,害,明年继续这周主要是复习了,然后写了写数据结构课上一些代码,还补了一波别的作业,主要算法往下进行,但是做了一些数据结构题,打算下周进行下一个专题,要是能跟考试联系联系就好了,但是也的确锻炼了我打代码的能力。这周做的题不多,害,其实还是有点放松加放纵自己了,马上就考试了,得再多学点东西。...
2020-12-13 20:25:00
137
原创 20-12-06大二第十四周
这周过的尤其迅速,很多东西都没学完,没复习完,一周就结束了。这一周做完了一本通上平衡树的题,想找个时间把他们按我的思路总结一下,结果还没还是执行,这一周又过完了,除了做一本通上的题以外,我在洛谷上找了一些比较简单的数据结构方面的题目,其实做数据结构方面除了可以增加思考跟阅历,还提高了我对于计算机各个存储结构以及对语言的理解。平衡树的思维还比较容易理解,搜了一下平衡树发现下面其实还有好几种类别,我学到的是最简单的。其中就有一种红黑树,红黑树同普通平衡树最大的区别呢就是给他上了颜色,也就是给他做了划分:(1
2020-12-06 21:19:56
146
原创 20-11-29大二第十三周
又到了一周一度的总结时间,这周的经过让我深刻认识到了自己近段时间的颓废,决定洗心革面重新做人。这周在做题上还是做了好些数学向的题,数据结构研究一道题然后敲出来太费时间了,但是这周也进行到了平衡树的部分,看完了定义,打了个模板,下星期继续,马上就要开始期末复习了,这几周多学点。我还找了找英文题的网站,结果发现杭电OJ好像所有人都能做,嗯,挺好的……平衡树的重点是判断和调整,插入、删除操作除了判断权值以外还要看树的形状,查找前驱后继操作就找个变量跟在后面,求排名的操作其实就是中序遍历的排序,可在设置
2020-11-29 20:34:38
119
原创 20-11-22大二第十二周
时间总是过得很快,这周尤其如此。特别是在学东西还学不大会的时候就会尤为烦躁,这周重点还是数据结构部分,在尝试做过这么多题之后,感觉数据结构是各个算法的基础。这周还是主要写了写倍增求LCA的题,树链开了一点点头,然后就是在洛谷上对于数学方面的巩固,下周打算找找有没有英文题目的这种找题网站,毕竟之后是要用英语,这样之后也会方便很多。倍增跟树链都是主要求一些权值修改,询问权值和这样的问题,现在对于数据结构这方面的感觉就是代码越来越长了,而且数据结构所包含的这种二维上的各种思想在生活的各方面都能看到,特别是
2020-11-22 21:19:39
127
原创 20-11-15第十一周
这周还是主要看的数据结构,我觉得数据结构非常难,大概是智商不够吧。除了做题之外在看了老师发的对话之后觉得应该看看自己之前学习的程度,然后就基本每天搞一道数学的题,感觉数学的题最起码还有迹可循数据结构是完全不行了,直接看不懂定义。在洛谷上找的数学向的题,其中矩阵和排列组合是做的比较顺利的,顺带着这周多看了看递归,题目做的都不是特别难的题,主要是现在我看这个难度的已经是极限了。数据结构做了点RMQ,看了线段树和LCA,LCA还没咋看懂,而且仅限于做模板题,要是看不出来……那就别想做出来了,感觉做题的时候
2020-11-15 21:26:07
129
原创 有关字符串的一些好用的小函数
最近老是会做到跟字符串有关的内容,把这些用上的话,判断还有转换啥的就不愁了<ctype.h><ctype.h> 头文件中包含了一系列与字符处理有关的函数,这些函数有一个共同特点:它们的参数都是 int 类型。例如:int isalnum ( int c ); int islower ( int c ); int isupper ( int c ); int tolower ( int c ); int toupper ( int c ); 字符分类函数
2020-11-11 11:37:28
158
原创 20-11-08大二第十周
回顾这一周的学习情况,还是觉得效率不够高。这周主要做了一下组合剩下的题,然后看了树状数组跟RMQ问题,并且做了相关题目。数学部分还有个博弈,我看是跟树之类的数据结构有关,决定先巩固一下有关数据结构的知识再回来看。树状数组,说实话刚开始没看懂,大概是对树不是很敏感,然后在纸上多写了一些之后才有点能够理解。本质上是将他们按2^n-2^(n-1)来分开再在2^n的时候得到前几项的和,这样可以更快的得到想要的值。并且在修改的时候也要顺利很多。RMQ问题,ST算法,这个看的更蒙,特别是在例题里面有一个“<
2020-11-08 23:04:38
107
原创 数据结构RMQ问题最敏捷的机器人
为防止忘记RMQ算法特写一篇有关RMQ的题解#10120. 「一本通 4.2 例 2」最敏捷的机器人内存限制:512 MiB时间限制:1000 ms标准输入输出题目类型:传统评测方式:文本比较上传者:1bentong提交提交记录统计测试数据讨论题目描述Wind 设计了很多机器人。但是它们都认为自己是最强的,于是,一场比赛开始了……机器人们都想知道谁是最敏捷的,于是它们进行了如下一个比赛。首先,他们面前会有一排共n 个数,它们比赛看谁能最先把每连续k 个数中最大和最小值写...
2020-11-07 21:01:15
299
原创 2020-11-1大二第九周
又到了一周一次的周总结时间,这一周在增加了做题之后,有出现了新的问题,就是看算法的时间变少了,看理论之类的时间相对而言不够,这周在看的算法比起其他周要少了很多,之前可以看将近三章的这周只学习了一章半,还不是做完所有搜到的题。就下周注意一下,争取能在白天上课之中的间隙里看算法,然后晚上回来敲代码进行实现。这周就做了做上周矩阵学完之后还没敲的题,然后又学习了组合部分。我认为,矩阵和排列组合的思想在很多题里面能用到,是非常重点以及基础的。比起背公式,排列组合更要理解它是如何形成的,如何计算的,这在数学上已
2020-11-01 23:49:52
186
原创 20-10-25大二第八周
时间就是过的很快,20周期末的话转眼间过了将近一半了。这周还是主要看了数学基础,同余问题,矩阵乘法,组合看了一小部分,学的还是有点少。在同余问题上,其实更倾向于理解为什么可以这样做,以及什么时候更适合与用这种方法,发现都是比较明显的点出是要有除法,取余等操作。在矩阵这一方面,更倾向于分析题意,找出规律以及与矩阵乘法相结合,有的递推的时候矩阵乘法也适用,比如Fibonacci数列,相当一部分题都是Fibonacci数列与矩阵乘法的结合而且可以提高效率,降低时间复杂度。(这里不得不吐槽一下有关时间的
2020-10-25 22:05:41
73
原创 有关10.24号codeforces的感悟
A. Reordertime limit per test1 secondmemory limit per test256 megabytesinputstandard inputoutputstandard outputFor a given arrayaaconsisting ofnnintegers and a given integermmfind if it is possible to reorder elements of the arraya...
2020-10-25 21:30:59
141
原创 有关10.20号codeforces的相关感悟
第一题Boring Apartments:大致是说数据的存入总是为x,xx,xxx这样,最多一个数的组合有4项,给出一个带重合的数,依次求和(特别注意:不是求有多少个数,应是有几位就加几)于是:可以先求出前面出现的数乘以出现时排序的总数为10,再加上从这个数开始的各个位即可:#include<iostream>#include<cstdio>using namespace std;int main(){ int n,t,x,y; cin>&g...
2020-10-21 17:15:42
86
原创 数学基础Biorhythms(中国剩余定理)
题目描述原题来自:POJ 1006人生来就有三个生理周期,分别为体力、感情和智力周期,它们的周期长度为天、天和天。每一个周期中有一天是高峰。在高峰这天,人会在相应的方面表现出色。例如,智力周期的高峰,人会思维敏捷,精力容易高度集中。因为三个周期的周长不同,所以通常三个周期的高峰不会落在同一天。对于每个人,我们想知道何时三个高峰落在同一天。对于每个周期,我们会给出从当前年份的第一天开始,到出现高峰的天数(不一定是第一次高峰出现的时间)。你的任务是给定一个从当年第一天开始数的天数,输...
2020-10-20 22:41:23
345
1
原创 数学基础曹冲养猪
题目描述自从曹冲搞定了大象以后,曹操就开始琢磨让儿子干些事业,于是派他到中原养猪场养猪,可是曹冲很不高兴,于是在工作中马马虎虎,有一次曹操想知道母猪的数量,于是曹冲想狠狠耍曹操一把。举个例子,假如有 16头母猪,如果建了 3 个猪圈,剩下 1 头猪就没有地方安家了;如果建造了 5 个猪圈,但是仍然有 1 头猪没有地方去;如果建造了 7 个猪圈,还有 2 头没有地方去。你作为曹总的私人秘书理所当然要将准确的猪数报给曹总,你该怎么办?输入格式第一行包含一个整数 n,n<=10表示建立猪圈.
2020-10-20 21:44:56
320
1
原创 2020-10-18大二第七周
又是一周时间结束了。这周主要看了数学基础一部分。第一部分:快速幂通过分治思想将幂运算划分为两半两半相乘。有递归和非递归形式的代码,相对而言非递归类型的代码行数啥的最少,理解起来其实同样。做了几个题感觉还可以。第二部分:质数判断方法:试除法,扫描2—N的1/2次方,检查能否整除N。筛选方法:Eratosthenes筛选法 标记判断好质数后的倍数,但会出现被标记多次的情况,即可以用线筛,让它成为这个合数的最小质因子,即只会标记一次。质因数分解:结合判定方法进行分解。这个部分做题相对要少,
2020-10-18 23:25:10
120
原创 数学基础转圈游戏
题目描述n个小伙伴(编号从0到n-1)围坐一圈玩游戏。按照顺时针方向给n个位置编号,从0到n-1。最初,第0号小伙伴在第0号位置,第1号小伙伴在第1号位置,……,依此类推。游戏规则如下:每一轮第0号位置上的小伙伴顺时针走到第m号位置,第1号位置小伙伴走到第m+1号位置,……,依此类推,第n−m号位置上的小伙伴走到第0号位置,第n-m+1号位置上的小伙伴走到第1号位置,……,第n-1号位置上的小伙伴顺时针走到第m-1号位置。...
2020-10-14 12:45:12
787
原创 数字基础快速幂(A的B次方)
题目描述给出三个整数 a b m,求 pow(a,b)%m 的值。输入格式一行三个整数 a,b,m。输出格式一个整数,表示 pow(a,b)%m 的值。样例样例输入2 100 1007样例输出169数据范围与提示对于全部数据,1<=a,b,m<=le9。#include<iostream>#include<cstdio>#include<cstring>using namespace st..
2020-10-14 10:51:38
972
原创 2020-10-12大二第六周
今天已经是下一周的周一了,但还要对上一周做些总结。在ACM的学习上,这一周其实算是补了一下比较原始的动态规划,在网上找了几道题,在b站上找了相关视频进行学习,更加深入的动态规划没有老师讲,就靠我们自己摸索了。在学到树形的动态规划后,我又去恶补了一下树的概念以及形成原理,还有适用类型。树形DP大概解题方法:一般来说树形dp在设状态转移方程时都可以用f[i][]表示i这颗子树怎么怎么样的最优解,实现时一般都是用子树更新父亲(即从下向上更新),那么首先应该考虑的是一个一个子树的更新父亲还是把所有子树都算完
2020-10-12 15:01:00
92
原创 2020-10-4大二第五周
这周因为国庆,中秋有好多事,但是学习当然是不能落下的。这周的算法学习了一点点动态规划,动态规划主要应用于决策性问题,同贪心问题有些许相似,即:已知问题规模为n的前提A,求解一个未知解B。(我们用An表示“问题规模为n的已知条件”)此时,如果把问题规模降到0,即已知A0,可以得到A0->B.如果从A0添加一个元素,得到A1的变化过程。即A0->A1; 进而有A1->A2; A2->A3; …… ; Ai->Ai+1. 这就是严格的归纳推理,也就是我们经常使用的数学
2020-10-04 21:48:00
90
原创 2020-09-27大二第四周
这周又是一个忙碌的一周,除了必要的课程和工作以外,还在学习暑假落下的算法课程,以及差了一点的c++。周六那天听同学的讲课也受益匪浅,把一些重要的经常用的函数等进行了总结与讲解。给同学们了一些使用的模板。一般筛法(埃拉托斯特尼筛法,之后简称为埃筛):基本思想:素数的倍数一定不是素数实现方法:用一个长度为N+1的数组保存信息(0表示素数,1表示非素数) 先假设所有的数都是素数(初始化为0) 从第一个素数2开始,把2的倍数都标记为非素数(置为1),一直到大于N; 然后进行下一趟,找到2后面的下一个
2020-09-27 21:56:21
187
1
原创 ACM训练1
回归ACM队的第一次比赛,可以用惨不忍睹来形容。暑假的放松让我有些许跟不上他们的进度,在算法还有数据结构上都了解甚少。第一个题是有点思路的,感觉就是用坐标,但是要存储,而且还要减去之间相交的部分,但是有点复杂而且思路也不算非常清晰。还看了第七题,是一个逻辑问题,讲的是去拿快递,但是要开柜门,必须在机子上把柜门打开然后才能去取出快递,而且要一个一个取,就导致了会有所走路数最少问题。于是就可以通过计算到开柜门的机子到柜门之间的距离,最小的一个进行比较,将其他的这些路数相加就可以计算出最小的步数。第一次编程想错
2020-09-20 19:27:22
114
原创 二分与三分
又到了学习代码的时间,这次是在信息学奥赛提高篇上学习二分与三分。二分,即数学中经常使用的二分法,对于区间[a,b]上连续不断且f(a)·f(b)<0的函数y=f(x),通过不断地把函数f(x)的零点所在的区间一分为二,使区间的两个端点逐步逼近零点,进而得到零点近似值的方法叫二分法。三分,即在区间内用两个mid将区间分成三份,这样的查找算法称为三分查找,也就是三分法,三分法常用于求解单峰函数的最值。同时还有一种理解,即在二分查找的基础上,在左区间或者右区间上再进行一次二分。二分法适用于单调函数,而
2020-06-14 21:11:54
319
原创 ACM训练总结(最短路径)
又是一周过去了,五一前应该是开不了学了。这周我们学习了图论算法里的最短路径问题,即固定起始点的情况下,求最短路。具体形式包括:1.确定起点的最短路径问题 - 即已知起始结点,求最短路径的问题。 2.确定终点的最短路径问题 - 与确定起点的问题相反,该问题是已知终结结点,求最短路径的问题。在无向图中该问题与确定起点的问题完全等同,在有向图中该问题等同于把所有路径方向反转的确定起点的问题。3...
2020-04-18 21:23:40
273
原创 ACM训练总结(树)
这周做的是一本通上数据结构-树的部分。#二叉树一棵深度为k,且有2^k-1个结点的二叉树,称为满二叉树。这种树的特点是每一层上的结点数都是最大结点数。而在一棵二叉树中,除最后一层外,若其余层都是满的,并且或者最后一层是满的,或者是在右边缺少连续若干结点,则此二叉树为完全二叉树。具有n个结点的完全二叉树的深度为floor(log2n)+1。深度为k的完全二叉树,至少有2k-1个叶子结点,至多有2...
2020-04-11 12:07:54
211
原创 ACM训练总结(栈与队列)
又过了一个星期,距离回学校又近了一步。 这周学习了两种数据结构,栈和队列。 栈是一种只能在一端插入或者删除的线性表。 1.进栈(PUSH)算法①若TOP≥n时,则给出溢出信息,作出错处理(进栈前首先检查栈是否已满,满则溢出;不满则作②);②置TOP=TOP+1(栈指针加1,指向进栈地址);③S(TOP)=X,结束(X为新进栈的元素);2.退栈(POP)算法①若TOP≤0...
2020-04-05 12:10:31
257
原创 ACM训练总结(分治)
又是一周过去了,还是没有开学,衣服都没得穿了。分治,即分而治之,即将较大的问题分解成几个较小的问题,通过对小规模问题的求解达到对整个问题的求解。用二分法把大问题分成小问题。用分治的话,时间要快,但是还是按一个方向计算,就是快了。化成简单问题这种方法,我记得之前也有个问题是这样做的,也算是老生常谈了吧。其实我觉得还是主要是分析,能看出问题深处到底问的是什么,然后再判断用什么样的方法。这周...
2020-03-28 20:50:56
246
原创 题解4-N
The new ITone 6 has been released recently and George got really keen to buy it. Unfortunately, he didn’t have enough money, so George was going to work as a programmer. Now he faced the following pro...
2020-03-23 15:49:11
170
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅