原创 CF1257E The Contest

洛谷題目鏈接 題目分析 只要保證\(a_1\)和\(a_3\)滿足條件即可,所以我們幾乎可以忽略\(a_2\). 爲了方便下面講解,簡化一下題面. 將每個元素想象成一棵棵帶有編號的樹,要通過一系列的操作, 將樹種在上方(\(a_1\)處),

原创 洛谷 P7074 方格取數

題目傳送門 $f_{i,j,1/0}$表示到$(i,j)$從上面/下面來的最大值. 則方程爲 : \(f_{i,j,1}=max\) { \(f_{i-1,j,1},f_{i-1,j,0},f_{i,j-1,1}\)} \(f_{i,j,

原创 CH 5102 Mobile Service

題目傳送門 \(f_{i,j,k}\)表示到第i次,一個人在j,一個人在k的最小花費. 因爲其中一個人一定在\(p_i\)上. \(f_{i+1,j,k} = min\) { \(f_{i+1,j,k},f_{i,j,k}\) } \(+

原创 洛谷 P3908 數列之異或

題目傳送門 很顯然的結論,可以打表找規律. #include<iostream> #include<cstdio> #include<cstring> using namespace std; long long n,m,k; in

原创 快讀板子

inline long long mx() { long long s = 0,w = 1; char ch = getchar(); while(ch < '0' || ch > '9') { if(ch == '-') w =

原创 洛谷 P1363 幻象迷宮

題目傳送門 如果某一個點被在不同的矩陣上走過兩次,那就一定可以走出無限遠. 因爲有模運算的騷操作,所以只需要保存一張矩陣即可. #include<iostream> #include<cstring> #include<cstdio>

原创 洛谷 P1792 [國家集訓隊]種樹

題目傳送門 和另一道題差不多,本題只需把鏈變成環即可. #include<iostream> #include<cstdio> #include<cstring> #include<queue> using namespace std;

原创 洛谷 P1069 細胞分裂

題目傳送門 將所給的數質因數分解,當細胞數增長到所有質因數的指數都比試管數中的大,即可平均分. #include<iostream> #include<cstdio> #include<cstring> using namespace

原创 CF 1445C

題目傳送門 題目大意是,給定\(p_i\)和\(q_i\),找到一個最大的\(x_i\)使得\(p_i \mod x_i=0\)且\(x_i \mod q_i \neq 0\) 分情況討論: 1.\(p_i < q_i\)時,答案爲\(p

原创 洛谷 P1154 奶牛分廄

題目傳送門 其實本題就是要找一個整數k,使得 \(\forall a_i,a_j \in A\) 且 \(i\neq j\), 滿足 \(a_i\mod k\neq a_j\mod k\) 而不滿足上述條件的情況爲 \(\exists

原创 洛谷 P4550 收集郵票

題目傳送門 用\(f_i\)表示已經買了i種,到買齊郵票的期望買的張數。 用\(g_i\)表示已經買了i種,到買齊郵票的期望花的價格。 所以 \(f_i=(f_i+1)*\frac{i}{n}+(f_{i+1}+1)*\frac{n-i}

原创 CF 865D

洛谷題目翻譯 假設每天都買,到最後的時候,所有沒賣出去的郵票都可以原價出售(相當於沒買). 每到新的一天,如果當前的價錢比以前某賣出的一天高,那就用今天賣前面那天的股票. 如果不存在上一行的情況且今天的價錢比我已經買了且沒賣的最便宜的股票

原创 洛谷 P2949 [USACO09OPEN]Work Scheduling G

題目傳送門 正難則反,根據時間從後往前倒着看,只要每到一個時間節點,能加任務就加任務,然後選一個受益最大的任務.(注意,時間0也可能有任務) #include<iostream> #include<cstdio> #include<cst

原创 洛谷 P2107 小Z的AK計劃

題目傳送門 與\(\color{red}{這個題}\)思路差不多,本題可以先忽略距離的影響,最後再考慮. 一定一定一定一定一定一定一定一定一定一定要開long long #include<iostream> #include<cstdio

原创 洛谷 P3110 [USACO14DEC]Piggy Back S

題目傳送門 因爲每條邊的長度是相同的,所以用bfs就行.當背起來走不比分開更優時,分別跑bfs就行. 當更優時,處理出每個點到1,2,n的距離,然後更新答案. #include<iostream> #include<cstdio> #in