![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
自主练习
想出成果的acmer
当你越来越漂亮的时候,自然有人关注你,当你越来越有能力时,自然会有人看得起你,改变自己,你才有自信,梦想会慢慢的实现,要做好你自己,懒惰可以毁掉一个人,勤奋可以激发一个人,不要等到夕阳西下的时候才对自己说如果当初…如果…我就会怎么样,之类的话,都已经晚了,我只想告诉你一句话:要做一个连自己都羡慕的人!
展开
-
天梯赛自主练习8 (全是原题,都不想做了,老是做水题会麻痹自己的)
题目17年的,5年前的,确实相对简单些,现在打有可能能摸到国一,不过最后一题dfs爆搜估计骗的分不够用。第二题线段树大概率也想不到。注意数据边界!阅览室这题又又又WA了,忘了考虑0h0min的情况。map要养成一个好习惯,用mp.find(key) == mp.end()判断对应key是否存在value,否则就会存在BST那个题出现的问题,输入为负数、正数皆有,有可能map对应的值是输入中不存在的,这时直接用mp[key]判断就不是很好,养成好习惯。...原创 2022-04-19 21:43:50 · 113 阅读 · 0 评论 -
天梯赛自主练习7 (19年决赛真题,这题感觉有点恶心,而且我打19年90%连200分都打不到,我是菜菜)
题目感觉这题拿国二难度很大啊,要不是我做过这个L3-1,我这把都拿不了。可能是模型建立能力不太够叭。L1-8也很恶心,敲了半天。冰岛人那个我着实没想到那个情况。到点了,润了,明天再补题。题意:思路:时间复杂度:代码:...原创 2022-04-19 15:57:23 · 185 阅读 · 0 评论 -
天梯赛自主练习5补题 (17年大区赛)
题目l2-4功夫传人题意: 给定以1为根的有向树,根节点的点权为Z,每传给子节点,就减少r%,该子节点是叶子节点,叶子节点会翻a[i]倍。思路: 感觉这个题意有点迷,题干说没传一代就减弱r%,除非遇到叶子,就说明叶子不该减弱r%。但是这样连样例都过不了,好怪。建完图dfs求和即可。!又忘了特判,如果n==1我又没特判,wa了一分。时间复杂度: O(n)代码:#include<bits/stdc++.h>using namespace std;typedef long lon原创 2022-04-17 10:18:30 · 237 阅读 · 0 评论 -
天梯赛自主练习4补题 (如果20年去打有机会拿国二吧,国一不太可能,最后俩题都好难啊)
题目l2-4网红打卡攻略题意: 略。思路: 按给定的序列模拟一下即可,如果某个点出现次数不为1,说明不符合条件,或者中间存在点不可达。忘了把不符合条件的情况设为INF,wa了半天。时间复杂度: O(k*n)代码:#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef pair<int,int> PII;const int N = 502;#define int long l原创 2022-04-16 18:52:14 · 311 阅读 · 0 评论 -
2021 澳门站(热身赛) ABC
题目热身赛,上来Awa了一发,又读了读题。B想麻烦了,wa了一发,然后队友想到了正解,但是时间来不及了,直接去吃饭了,不然正式赛前赶不回去。A题意: 给定1-n,每个数用一次,构造一个数组,使得数组中差为k的位置尽可能地多。思路: 1,1+k,…2,2+k…时间复杂度: O(n)代码:// Problem: K-skip Permutation// Contest: NowCoder// URL: https://ac.nowcoder.com/acm/contest/31453/A原创 2022-04-03 20:06:31 · 543 阅读 · 0 评论 -
正经人谁吃泡菜肥牛啊?(树上启发式合并 + 树状数组)
题目题意: 给定n个点的树,每个点有对应的点权。m个查询,查询以x为根的子树重点权<=k的节点数量。思路: 树上启发式合并,但是不太会add。离线查询、无修改。偷看大佬做法可以把每个x节点对应的查询放在一起,等合并的时候一并求解。维护用树状数组维护即可。时间复杂度: O(nlogn*log(nlogn)),感觉是。每个点至多合并logn次,而每次合并的时候都要加入到树状数组里。时限开了6秒,能冲。代码:// Problem: 正经人谁吃泡菜肥牛啊?// Contest: NowCode原创 2022-04-02 18:31:10 · 219 阅读 · 0 评论 -
赛氪冬季赛 D(树上启发式合并)
题目题意: 给定n个点的树,m次询问,问以u为树根的子树的贡献。贡献为:(某条边权的出现次数*边权)^2。思路: 树上启发式合并模板直接套用即可。时间复杂度: O(nlogn)代码:#include<bits/stdc++.h>using namespace std;const int N = 1e5+10;typedef long long ll;typedef pair<int,int> PII;int h[N],e[N<<1],ne[N<原创 2022-04-02 16:15:12 · 357 阅读 · 0 评论 -
dsu on tree 模板 (树上启发式合并)
题目题目题意: T1:给定一棵n个点的树,求每个点以它为树根的子树的颜色种类。T2:给定一棵n个点的树,求每个点以它为树根的子树的dominating color之和。dominating color: 在本棵树中出现次数最多(或之一)思路: dsu on tree,树上启发式合并,不过这个算法并没有用到dsu(并查集)。考虑暴力求解,以每个点为起点dfs搜索一次,时间复杂度为n^2。但是可以利用轻重链的性质,优化为nlogn。 注意到一个点的贡献是所有儿子求和,求完和儿子的贡献就用不到了原创 2022-04-02 15:48:09 · 254 阅读 · 0 评论 -
2021南京站 D(思维题)
题目题意: 给定一个自造的排序规则,依次输出参数为0-n时的元素交换次数。思路:第一次循环,把a[1]和>a[1]的元素都循环右移动,最大的元素会放到a[1]的位置。第2-n次循环,前(i-1)个元素已然升序排序。考虑元素各不相同。 对于第i个元素(i>=2),假设前i-1个数中碰到的第一个比他大的数下标为k,那么所有k-i-1的数都会跟她交换一次,贡献为k-i,即前i个数中比a[i]大的数的个数。可以用树状数组动态维护。 特别地,对于比a[1]大的数,有额外的1点贡献,并且要原创 2022-04-01 22:03:15 · 147 阅读 · 0 评论 -
P2986 [USACO10MAR] Great Cow Gathering G (学学换根dp)
题目题意: 给定n个点的树,每个点有对应的点权。选中一个点,满足所有点到其的点权*距离之和最小,输出对应的最小值。思路: 还是最基础的换根dp,只不过和上一个题相比多了边权和点权,注意边权不是1就行。时间复杂度: O(n)代码:// Problem: P2986 [USACO10MAR] Great Cow Gathering G// Contest: Luogu// URL: https://www.luogu.com.cn/problem/P2986// Memory Limit: 12原创 2022-03-31 22:15:01 · 277 阅读 · 0 评论 -
[POI2008] STA-Station (学学换根dp)
题目题意: 给定一个 n 个点的树,请求出一个结点,使得以这个结点为根时,所有结点的深度之和最大。一个结点的深度之定义为该节点到根的简单路径上边的数量。思路: 换根dp.1.先以任意一个点为根dfs1,求出f[root]。2.考虑换根。看由u换成其子节点j之后的影响,进行dfs2。从而在O(n)的时间内完成换根,得到。f[j] = f[u] - s[j] + n - s[j]时间复杂度: O(n)代码:// Problem: P3478 [POI2008] STA-Station//原创 2022-03-31 21:27:24 · 413 阅读 · 0 评论