原创 ABC306 E - Best Performances 題解 離散化+線段樹/splay tree

題目鏈接:https://atcoder.jp/contests/abc306/tasks/abc306_e 題目大意: 有一個長度爲 \(N\) 的序列 \(A = (A_1, A_2, \ldots, A_N)\),以及一個整數 \(K

原创 洛谷P8435 【模板】點雙連通分量 題解

題目鏈接:https://www.luogu.com.cn/problem/P8435 解題思路完全參考自 Jeremiahy 大佬的博客 。特別是文章的最後一部分。 (系統維護,博客點不進,那先直接進 https://www.luogu.

原创 abc336 E - Digit Sum Divisible 題解 數位DP

題目鏈接:https://atcoder.jp/contests/abc336/tasks/abc336_e 題目大意: 我們定義一個整數 \(n\) 的 數位和 爲 \(n\) 的十進制表示中的各位上的數字之和。比如:整數 \(2024\

原创 洛谷P1250 種樹 題解 差分約束求最小解集

題目鏈接:https://www.luogu.com.cn/problem/P1250 題目大意:略 解題思路:差分約束 求 最長路。 關於爲什麼求最長路可以看一下這邊博客:《關於差分約束系統中跑最長路還是最短路的澄清》 博客的核心思想就是

原创 CF295B Greg and Graph 題解 floyd性質題

題目鏈接:https://codeforces.com/problemset/problem/295/B 題目描述可參見 洛谷 解題思路完全來自 aiiYuu巨佬的博客 一道很好地利用了 floyd 算法性質的題目。 floyd算法 示例程

原创 HDU2544 最短路 題解 Bellman-Ford算法

題目鏈接:https://acm.hdu.edu.cn/showproblem.php?pid=2544 題目大意:一道簡單的最短路。主要是記錄一下 bellman-ford 算法的實現。 示例程序(bellman-ford): #incl

原创 洛谷P3385 SPFA判負環

題目鏈接:https://www.luogu.com.cn/problem/P3385 解題思路:完全參考自 MoonSkyy大佬的博文 核心思想: \(cnt_u\) 表示起點到 \(u\) 的最短路所經過邊數,如果 \(cnt_u \g

原创 洛谷B3647 【模板】Floyd 題解 floyd算法 求 多源多匯最短路

floyd主要解決的問題: 多源多匯最短路:https://www.cnblogs.com/quanjun/p/17928959.html 傳遞閉包:https://www.cnblogs.com/quanjun/p/17928980.h

原创 洛谷B3611 【模板】傳遞閉包 floyd/bitset

目錄floydbitset優化 題目鏈接:https://www.luogu.com.cn/problem/B3611 參考題解:https://www.luogu.com.cn/blog/53022/solution-b3611 floy

原创 P1339 [USACO09OCT] Heat Wave G 最短路入門題 Dijkstra/SPFA/Dijkstra+優先隊列優化

目錄樸素的 Dijkstra 算法SPFA 算法Dijkstra + 優先隊列優化 題目鏈接:https://www.luogu.com.cn/problem/P1339 題目大意:無向圖有單源最短路。 樸素的 Dijkstra 算法 時間

原创 CF762E Radio stations 題解 CDQ分治

題目鏈接:http://codeforces.com/problemset/problem/762/E 題目大意: 一共有 n 個電臺,對於每個電臺 i 有三個參數: \(x_i\), \(r_i\), \(f_i\),分別指它的一維座標、

原创 洛谷P1824 進擊的奶牛 題解 二分答案

題目鏈接:https://www.luogu.com.cn/problem/P1824 題目大意: 本題相當於在 \(n\) 個數中選 \(c\) 個數,使得這 \(c\) 個數中相差最小的兩個數之差儘可能地大。 解題思路: 我們首先可以給

原创 CF1784C Monsters (hard version) 題解 線段樹

題目鏈接:https://codeforces.com/problemset/problem/1784/C 題目大意: 你面前有 \(n\) 只怪獸,每隻怪獸都有一個初始血量,你可以進行兩類操作: 操作1:選擇任意一個血量大於 \(0\)

原创 洛谷P3805 【模板】manacher

題目鏈接:https://www.luogu.com.cn/problem/P3805 manacher算法模板題。 參考資料:https://oi-wiki.org/string/manacher/ 示例程序: #include <bit

原创 Acwing393. 僱傭收銀員 題解 差分約束

題目鏈接:https://www.acwing.com/problem/content/description/395/ 解題思路: 差分約束。 爲了方便起見,定義第 \(i\) 個時間段爲 \(i-1:00\) 到 \(i:00\) 這個