03 2021 档案

摘要:对于一个序列,每输入一个数t,如果栈不为空,就判断它与栈顶是否相等,如果等,栈顶出栈,判断下一个数;如果不等,在栈的大小允许范围内,将index入栈,每入栈一次判断一次t与 栈顶是否相等。 如果序列是符合要求的,最后的栈一定是空的,所以只要在处理完序列后判断栈有没有空即可知道序列对不对。 1 int 阅读全文
posted @ 2021-03-05 17:37 幻想Elapse 阅读(25) 评论(0) 推荐(0) 编辑
摘要:非原创,参考:https://blog.csdn.net/richenyunqi/article/details/81150510 1 #pragma warning(disable:4996) 2 #define _CRT_SECURE_NO_WARNINGS 3 4 #include <iost 阅读全文
posted @ 2021-03-05 10:50 幻想Elapse 阅读(43) 评论(0) 推荐(0) 编辑
摘要:1 #pragma warning(disable:4996) 2 #define _CRT_SECURE_NO_WARNINGS 3 4 #include <iostream> 5 #include <algorithm> 6 #include <cmath> 7 #include <vector 阅读全文
posted @ 2021-03-04 21:37 幻想Elapse 阅读(47) 评论(0) 推荐(0) 编辑
摘要:第一个序列用vector存储起来,第二个序列读入时可同时处理(在线算法)。 需要得到的数(结果)是两个序列组合并后,处于下标(n+m-1)/2的数,所以for循环需要执行(n+m-1)/2次(每次确定一个数)。 最后输出s2[i-1]或者s2[(n+m-1)/2]即可。 注意此处的处理: 如果输入个 阅读全文
posted @ 2021-03-04 19:32 幻想Elapse 阅读(67) 评论(0) 推荐(0) 编辑
摘要:参考:https://blog.csdn.net/richenyunqi/article/details/78868563 1 #pragma warning(disable:4996) 2 #define _CRT_SECURE_NO_WARNINGS 3 4 #include <iostream 阅读全文
posted @ 2021-03-04 11:08 幻想Elapse 阅读(45) 评论(0) 推荐(0) 编辑
摘要:1 #pragma warning(disable:4996) 2 #define _CRT_SECURE_NO_WARNINGS 3 4 #include <iostream> 5 #include <algorithm> 6 #include <cmath> 7 #include <vector 阅读全文
posted @ 2021-03-03 10:50 幻想Elapse 阅读(51) 评论(0) 推荐(0) 编辑
摘要:使用dfs计算连通分量的数量 1 #pragma warning(disable:4996) 2 #define _CRT_SECURE_NO_WARNINGS 3 4 #include <iostream> 5 #include <algorithm> 6 #include <cmath> 7 # 阅读全文
posted @ 2021-03-02 22:17 幻想Elapse 阅读(53) 评论(0) 推荐(0) 编辑
摘要:先定义结构图node{name, height},存放姓名和身高。先将所有人按照身高顺序从大到小排好序(因为从最后一排开始输出,最后一排身高最高,所以刚好是从头开始处理),再分组处理,除了最后一排人数是n/k+n%k,其余排的人数均为n/k,引入formation函数,用下标作为参数给出处理范围(下 阅读全文
posted @ 2021-03-01 16:13 幻想Elapse 阅读(48) 评论(0) 推荐(0) 编辑
摘要:其实核心思想就是遍历每一个‘A’,这个A前面P的数量和后面T的数量的乘积就是一个A所能产生的PAT数,依次累加起来就是总的数量。 所以可以先找到第1个A,再找到第1个A前面所有P的数量cp,后面所有T的数量ct,相乘,并累加到结果中。 接着找第2个、第3个……第N个A,在找的过程中,如果遇到P,就将 阅读全文
posted @ 2021-03-01 10:57 幻想Elapse 阅读(41) 评论(0) 推荐(0) 编辑