摘要: 最短路1 floyd说白了就是个暴力,用三层循环枚举所有路径,然后留下权值最小的一条 大概就长这个样 for(中转点k) for(起点i) for(终点j) d[i][j] = min(d[i][j], d[i][k] + d[k][j]); 注意这个题的数据有重边,输入的时候留下最小的,这样就做完 阅读全文
posted @ 2024-03-11 10:16 XavierTse 阅读(147) 评论(0) 推荐(0)
摘要: 最短路1 求个全源最短路。 看数据范围\(1\le n\le100\),直接floyd秒掉就行。 最短路2 先判负环,用Bellman-Ford,当然建议用队列优化版的(国内一般叫spfa)。 虽然说spfa复杂度不稳定,但也一定比朴素版要快一点的。 第二步还是求全源最短路,但是这个题的数据范围到了 阅读全文
posted @ 2024-03-09 21:15 XavierTse 阅读(81) 评论(0) 推荐(0)
摘要: 鼠鼠我鸭 没学过前缀和的自己去补一下,这里不过多赘述(其实是我不想写) 以第二组数据为例: 类型 0 1 0 0 体重 2 5 6 5 先计算出不使用魔法时鸭鸭的重量,当作基础值\(ori=5\)。 然后来看看对一段区间使用魔法会造成什么效果: 类型 0 1 0 0 体重 2 5 6 5 变化a + 阅读全文
posted @ 2024-02-09 09:55 XavierTse 阅读(172) 评论(0) 推荐(0)