首页 > 其他分享 >9.2 比赛总结

9.2 比赛总结

时间:2024-01-22 22:56:47浏览次数:29  
标签:总结 比赛 复杂度 距离 后继 短距离 关键点 9.2 log

E 到 H

T2

简单树上 DP。

T4

原题

首先将一个操作拆成两个操作,每个操作加入 \((x,y,z),(x+1,y+1,z+2)\dots\)。

用堆(队列也行)模拟 kruskal 的过程,讨论一条边之后,将它的后继加入堆。

可以发现,如果一条边无法使用,则可以不加入它的后继,因为树上连接这两个点的路径上的边的边权都小于等于这条边,它们的后继都在堆里,则它们的后继会连接这条边的后继。

初始会加入 \(2m\) 条边,后面加入堆就要使用一条边,一共使用 \(n-1\) 条边,则时间复杂度 \(O(n\log n)\)。

T3

线段树维护矩阵转移 DP,时间复杂度 \(O(n\log nm^3)\)。

T1

  • 方法 1:求每个点到一个关键点的最短距离和距离最短的关键点,对于边 \((u,v,w)\),如果距离它们最短的关键点 \(f_u\ne f_v\),则可以用 \(dis_u+dis_v+w\) 更新 \(f_u,f_v\) 的答案。时间复杂度 \(O(m\log m)\)。
  • 方法 2:对每个点记录两个距离:最短距离,与最短距离来源不同的次短距离,如果边 \((u,v)\) 的来源 \(f_u=f_v\),则用 \(u\) 更新第一个距离;否则可以更新两个距离,答案为关键点的第二个距离。时间复杂度 \(O(m\log m)\),常数略大,SPFA 可过

策略问题

不要试图 \(1\) 秒 \(O(n\log^2n)\) 过 \(5\times10^5\),同样,\(3\times 10^5\) 对 \(O(n\sqrt n)\) 和 \(10^5\) 对 \(O(n\sqrt n \log n)\) 都比较危险。考试遇到这种情况可以考虑优化或者打破原来思路,实在没有思路观察算法会不会跑满,尽量优化常数。

标签:总结,比赛,复杂度,距离,后继,短距离,关键点,9.2,log
From: https://www.cnblogs.com/recollect-the-past/p/17981309

相关文章

  • 9.18 比赛总结
    题目。A,B水,D随便一种算法找环,然后随便一种数据结构维护。C:两个点等价,当且仅当以两个点为根的树同构。如果存在一个点不与其它点等价,则以这个点作为根,否则一定有两个连有边的点等价,断开这条边形成两棵同构的子树。经过这步处理之后,等价的点一定在相同深度。状态采用一般的树......
  • 9.9 比赛总结
    P~S。A改成kruskal重构树或直接并查集合并,跑一个树上背包。C贪心1容易发现,从\(k\)到\(k+1\),最多有\(4\)种情况:增加一个A类。增加一个B类。减少一个A类,并增加组。减少一个B类,并增加组。如果不是这些,那\(k\)的方案不是最优的。用\(5\)个可删堆维护......
  • 9.23 比赛
    b-e。T1数据范围,小,但不能暴力枚举路径。把路径切成两半,用meetinthemiddle。注意数据范围刚好爆int。赛后assert发现并无问题T2打表找规律,本质是组合数Lucas。T3kmp建立自动机,就可以直接DP。T4类似这个链接下的E题,注意到起点和终点都是充电桩,以所有带有充电......
  • 2023.6.3(Mon.) 练习赛总结
    T1分层图跑最短路。为了优化空间,用了隐式连边的方法。T2dp,主要的想法是合并排列。T4交换的个数是具有传递性的,所以可以找连通块的信息。又因为具有单调性,可以用二分去找。然后多重集排列即可,公式\(\frac{n!}{\prods_i!}\)。T5首先,对\(a\)和\(b\)都分别排序,求出\(r_i......
  • 2023.6.4(Sun.) 练习赛总结
    题目T1打表加贪心,注意模数和一些边界情况。T4数据结构或者dp,可以从颜色角度分别计算共献,也可以从合并的角度统一计算贡献。T2首先要发现一个重要的性质:差分数组单调不降。由于差分数组可以是正的或者负的,符合要求的序列分布情况应该类似与向上开口的抛物线(∪),其中最小值在中......
  • 2023.6.8(THUR.) 练习赛总结
    链接。T2绝对值最小值,可以把原式化为两个只有一个绝对值的式子,set维护即可。T4dp用记忆化搜索加unordered_map实现的,要经过一些处理保证均摊单次转移时间复杂度是\(O(1)\)的。平时要注意计算时间复杂度要从最大的方面考虑,dp时间复杂度是状态数量乘单次转移时间,考虑一......
  • 今日总结
    ava实现spark统计100万人口的平均年龄以及每个年龄的出现次数,数据格式为“序号年龄”//生成年龄数据,格式“序号年龄”privatestaticvoidmakeAgeData()throwsIOException{FilenewFile=newFile("src/main/files/peopleAges.txt");if(newFile......
  • OI 博弈论若干模型总结(Genshing)
    OI博弈论的若干模型OI不是知识竞赛。平等博弈是完全信息的(知道双方目标及操作收益),交替行动的,知道当前局面和转移的,平等(决策和当前状态操作者无关)的。不平等博弈和上面一致,但是有一方更加平等。所有的平等博弈都可以化为DAG上的移动游戏。公平组合游戏是无法行动者败的游戏......
  • 小景的Dba之路--impdp导入数据问题报错排查总结
    小景最近在工作中遇到了一个问题,用impdp做数据导入的时候,有以下报错,下面是问题排查过程:首先看到了ORA-01950:noprivilegesontablespace‘PUBDATA’这个报错,小景想到了以下原因:权限问题:ORA-01950错误表示用户没有在PUBDATA表空间上的特定对象的权限。这可能是由于数据库权......
  • 用户中心项目总结
    项目1总结第一天antdesignpro初始化命令有更新,如下:npmi@ant-design/pro-cli-gprocreatemyappumiui安装命令不再在antdesignpro使用手册显示,命令如下:yarnadd@umijs/preset-ui-Dspringinitializr不再支持java8,更换新建项目页面的服务器为阿里巴巴......