=================================================
废柴日记:首先是犯下懒惰之罪的Mr.RainsdRop。
=================================================
=================================================
日期:2021年10月1日 天气:晴
=================================================
以前有一个莲蓬叫做Mr.RainsdRop,他是莲蓬中的日更莲蓬。
有一次他因为一些原因断更了一次,他感到十分的自责,用『阿姆斯特朗回旋加速喷气式阿姆斯特朗炮』轰了自己5min。
后来,事情越来越多,发生了第二次、第三次断更,他依然很自责,但是没有之前那么伤心了。
最后,他就死了[doge]。
各位兄台,国庆快乐啊!
可能会有人觉得博主一直不更新是度假去了,可能你的假期刚刚开始,博主我的假期已经结束了。
由于疫情以及某些情况,学校思来想去,最后非常慷慨地赐予了我们一天的假期。
我知道学校这样做是有原因的,我完全没有意见。但就像是高中时我对于我们学校的管理措施一样虽然理解并且接受但还是忍不住吐槽两句一样,说实在的,所有的学校在跟假期拉扯的这方面,有一说一,一直都是有一手的。
既然已经被限制在学校了,那干脆玩的更high一些,之前老是抱怨着什么没时间准备内容,现在算是天时地利人和了。
之前在中秋的时候出过一篇废柴日记之中秋特辑:那些年我们一直分不清楚的近义词们①,在文章结尾处,我说接下来可能每个节日都会出一篇。
那么在这普天同庆,纪念中华人民共和国诞生的日子里,让我们来继续探讨一下那些简单的近义词吧。
Ⅰ.LCS(最长公共子序列)与LIS(最长上升子序列)
看到这两个词之后,有人可能会说了:
『不会吧不会吧?都1202年了,还有人不知道LCS和LIS吧?不会有人不知道它们什么意思吧?』
没办法,耐不住有英语不好的同学会搞不明白两个词的含义与区别。
一开始博主也有点搞不清楚,感觉最好的办法就是记一下以下的两个单词:
LCS中的C代表的单词为Common,意为共有的;共享的;而LIS中的I代表的单词为Increasing,意为增长。
而对于这两者的区别其实也很好想:
- 最长公共子序列LCS,最长的公共的子序列,那就至少要有两个或两个以上的序列,才能去求它们的公共序列,然后再求最长的。
- 最长递增子序列LIS,最长的递增的子序列,那就是求一个序列的所有递增的子序列,然后找最长的。
Ⅱ.数组指针和指针数组
我还记得,那是一个冬天的晚上,学长向当时的我们抛出了这个问题,我记得当时由于我一直没弄懂导致当天晚上训练到很晚才结束,也是很对不起当时的xdm(但我良心不痛的)。
各位也可以先想一想两者的含义与区别,再继续往下看。
①数组指针
int (*p)[n];
由于括号的原因导致 [ n ] 优先级降低,此时 p 的本质是指针,后面的 [ n ] 说明指针p可以指向一个长度为n的一维数组。
所以数组指针也被称为行指针。
int a[3][4];
int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组。
p=a; //将该二维数组的首地址赋给p,也就是a[0]或&a[0][0]
p++; //该语句执行过后,也就是p=p+1;p跨过行a[0][]指向了行a[1][]
②指针数组
int *p[n];
此时没有括号,[ ] 的优先级更高,所以p的本质是数组。而前面的 int* 说明数组p中的每个元素都是一个指针。
int *p[3];
int a[3][4];
p++; //该语句表示p数组指向下一个数组元素。注:此数组每一个元素都是一个指针
for(i=0;i<3;i++)
p[i]=a[i];
接下来会尽快赶上之前的进度,然后博主要开始更新题解了,也算是再次做起了老本行,写写CF的题解。
博主分很低,可能很多地方说的不好,希望各位能够谅解。
最后祝大家国庆假期愉快,注意安全,天天上大分!!!