原创 IncDec Sequence(差分)

給定一個長度爲 n(n≤105)(n \leq 10^5 )(n≤105) 的數列a1,a2,…,an{a_1,a_2,…,a_n}a1​,a2​,…,an​,每次可以選擇一個區間 [l,r],使下標在這個區間內的數都加一或者都減

原创 二分

放兩個鏈接,講的很詳細。 這篇博客只做分享。。 溜了溜了。 題目:https://www.luogu.org/problem/P2678 講解:詳解 點贊 收藏 分享 文章舉報

原创 p1045麥森數(高精快速冪)

題目描述 形如2P−12{P}-12P−1的素數稱爲麥森數,這時PPP一定也是個素數。但反過來不一定,即如果PPP是個素數,2P−12{P}-12P−1不一定也是素數。到1998年底,人們已找到了37個麥森數。最大的一個是P=30

原创 P1896 [SCOI2005]互不侵犯 【狀壓dp】

題目描述 在N×N的棋盤裏面放K個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各一個格子,共8個格子。 注:數據有加強(2018/4/25) 輸入格式 只有一行,包含兩個數

原创 一個數的因子個數求解公式

int getSum(int n) { int res = 1; int sq = sqrt(n); for(int i = 2; i <= sq; i++) { if(n % i == 0) { int tem

原创 Dijkstra的堆優化

在尋找未訪問過的最小的 d[u] 時, 未優化的dijkstra算法的尋找方法是遍歷d數組, 而採用堆優化的dijkstra算法是創建一個優先隊列, 每次取隊首元素,即所要尋找的d[u], 時間複雜度上比起未優化的要強太多。 #

原创 C 裝貨物

鏈接:https://ac.nowcoder.com/acm/contest/3781/C 來源:牛客網 題目描述 有 n 件貨物, 第 i 件重 wiw_iwi​ 噸,另有 x 個集裝箱,每個集裝箱可以裝重量不超過 W 噸的貨物

原创 B 小琛和他的學校

鏈接:https://ac.nowcoder.com/acm/contest/4047/B 來源:牛客網 題目描述 小琛是一所學校的校長。 他的學校有n個校區(編號1~n),被n-1條雙向道路連接,呈樹形結構。 第i個校區共有Ai

原创 螺旋折線

題目描述 如圖所示的螺旋折線經過平面上所有整點恰好一次。 對於整點(X, Y),我們定義它到原點的距離dis(X, Y)是從原點到(X, Y)的螺旋折線段的長度。 例如dis(0, 1)=3, dis(-2, -1)=9 給出整點

原创 kruskal

#include <iostream> #include <algorithm> #include <cstdio> #include <cstring> using namespace std; const int maxn

原创 CF 615 C Product of Three Numbers

C. Product of Three Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard input

原创 航班時間

題目描述 小h前往美國參加了藍橋杯國際賽。小h的女朋友發現小h上午十點出發,上午十二點到達美國,於是感嘆到“現在飛機飛得真快,兩小時就能到美國了”。 小h對超音速飛行感到十分恐懼。仔細觀察後發現飛機的起降時間都是當地時間。由於北京

原创 最短路徑之Floyd

Floyd本質上就是通過前k個節點來更新i和j之間的最短路徑。 20191213更新: 關於爲什麼k放在最外層: 關於爲什麼k能省略: 這個困擾了我好久, 最後, 終於想通了。。。說白點, 就是f[k][i][k] = f[k

原创 CF Round80 D Minimax Problem 二分+二進制

D. Minimax Problem time limit per test 5 seconds memory limit per test 512 megabytes input standard input output st

原创 lower_bound() 與 upper_bound()

頭文件: #include <algorithm> 二分查找的函數有 3 個: 參考:C++ lower_bound 和upper_bound lower_bound(起始地址,結束地址,要查找的數值) 返回的是數值 第一個 出現