时间
8:30~8:45
看题~,题意倒是都比较直观。
8:45~9:30
先写了T1 O ( n 3 ) O(n^3) O(n3)的暴力,又想了想枚举每个点所在的行与列,找到其他的点,将距离相乘后累加,直接写的话快不到那里就分段写了。
9:30~10:20
T2思考了一会没什么思路,就先去想T3了,T3对于题意不是特别理解“仙人掌树”(?),但看到数据范围“k=0”,就直接用并查集记录联通块个数就行了,第3,4组样例只有森林,对于森林而言切k次最多分为k个联通块,再原来联通块个数的基础上加k即可。
10:30~11:30
本来以为30分只连边后dfs n n n遍求出答案即可,没想到连小样例都过不了,思考后认为和连边的顺序有关,就干脆正反两次连边后dfs 2 ∗ n 2*n 2∗n遍。
11:30~12:30
想T4,样例推完认为是一张无向图中,对于每条边的最大费用为这个点所在的极小简单环中的边的最大值,若不在环中则为极大值,实验了几种想法发现不会求简单环…考虑类似于树状的结构,即全部为极大值…
12:30~1:00
想了想T1的特殊情况15分,就交了。
分数
期望:75+30+40+0=145
实际:60+0+0+5=65
T3并查集出现错误,导致40全无了。
T1 15分推错了。
T2贪心的不能保证其正确性。
…
分析
麻了…
剩下的几天要巩固基础算法,把学过的每个算法的特性和功能都搞清楚,在动手去写题时一定要确保自己写的算法的正确性以及复杂度,确保能拿的分数全部拿到。
最后一天了,我就想上个分…