有意思的题
记录在做题过程中 有特殊方法或者让人耳目一新的算法
DongGu.
一位 - 大四小混混 qq:1521839703
展开
-
中序序列和层序序列 输出 中序序列
大家好,我是 DongGu ,是一名软件工程专业大二的学生,写博客一方面是为了记录自己的学习过程,把自己犯的错误进行分享。但由于水平有限,博客中难免会有一些错误出现,有纰漏之处恳请各位大佬不吝赐教!有任何问题可以评论 或者 ___>QQ联系(1521839703)个人博客网站也搭好啦: dongguxy.top /*DBEACABCDE输出: ABDEC*/#include<iostream>#include <map>using namesp.原创 2022-05-09 10:08:00 · 220 阅读 · 0 评论 -
CodeForces - 429A 一道很好的dfs 典型更新问题
/*读题不仔细翻转的时候应该是隔一个子节点翻一次、我最初理解成了所有子节点都要跟着翻转、、、也就是 1 3 5 7 2 4 6 8*/#include <vector>#include <cstdio>#include <iostream>#include <algorithm>using namespace std;void wa() { cout << "NO\n"; }void ok() { c原创 2021-08-17 16:44:42 · 179 阅读 · 0 评论 -
AtCoder-abc209 Problem E
简单哈希 + 反向建图前向星或者邻接都可为什么反向? 由结论推原因,当确定一个状态就不可改了,以为这样才是最优#include <iostream>#include<algorithm>#include<cstdio>#include<vector>#include<queue>using namespace std;#define ll long longc...原创 2021-07-20 16:15:36 · 208 阅读 · 0 评论 -
H - Skyscraper Gym - 102220H(线段树)
这个区间合并的一个骚操作(tr[m].sum = tr[m << 1].sum + tr[m << 1 | 1].sum - min(tr[m << 1].rx, tr[m << 1 | 1].lx);//类似query的操作)很值得学习,l就是左边的高度,r最右边高度,sum就是这个区间的答案,lazy标记,总之这题出的很不错~~当然,树状数组也可以做,还比较简洁,不过还没学,下次补上~~~~#include<cstdio>#includ原创 2021-06-03 11:23:46 · 135 阅读 · 0 评论 -
CF-B. Ternary String && B - Email from Polycarp (“ 高级做法 ”---vector+pair)很舒服~~
题址题意:就是在一个序列里面找到含有1,2,3的最短子序列解法:这里用了一个pair的骚操作,first代表类型(1 2 3),second代表其位置,后面判断其不同就行了,当然其实也没那么复杂几个判断就可以了,就是记录每个1,2,3的最新距离,求其最小#include<string>#include<vector>#include <iostream>#include<algorithm>using namespace std;t原创 2021-05-11 23:52:56 · 188 阅读 · 0 评论 -
CodeForces - 798B &&& CF 610B (构成环的问题 )
798B:题址1. 题意:就是说给n对字符串,把它们弄成一样,操作有(遇到不一样就可以把它放到末尾,操作数+1),求最少操作数;2. 做法:方法很新颖,开一个string类型的数组,每次都加上一倍,类似构成一个环,这样再用到string的强大功能find找到首位置,也就是操作数,题目数据不大遍历n*n,找到最小及可;3. 代码#include<iostream>#include<cstdio>#include<algorithm>#include<原创 2021-05-06 15:13:47 · 150 阅读 · 0 评论 -
牛客-(合法括号)&&EDU-(A. ABC String)&&CF-(TMT Document)
~~莫名发现三道类似做法的题,想法都有点独特的做法,你们看—牛客:题址做法:首先每个 ‘(’ 必须要有一个‘)’和它匹配 ,所以我们用数值-1 和 1代替左右括号,当出现sum大于0时或者最后sum != 0,那就不匹配#include <bits/stdc++.h>using namespace std;char ch[1000000];int main(){ int T; cin >> T; int SUM = 0, in, FLA原创 2021-04-20 22:30:23 · 110 阅读 · 0 评论