原创 常用模板(感覺還不錯)

#include<iostream> #include<cstring> #include<algorithm> #include<cstdio> #include<cmath> #include<queue> #include<

原创 STL之queue(隊列)

隊列的操作如下: 1. queue<long long>q;//定義一個隊列q,類型爲long long 2. q.push(a);//將一個元素a從隊尾插入隊列q 3. queue<long long>p(q); //將隊

原创 模板:DINIC

題目見USACO草地排水一題 #include<iostream> #include<cstring> #include<algorithm> #include<cstdio> #include<cmath> #include<q

原创 模板:Edmonds_Karp 算法

題目見USACO草地排水一題 #include<iostream> #include<cstring> #include<algorithm> #include<cstdio> #include<cmath> #include<q

原创 Treap模板(簡單版)

支持: 插入 刪除 查找 最大值 最小值 (不支持重複元素) 代碼: #include<iostream> #include<cstring> #include<algorithm> #include<cstdio>

原创 模板:DINIC(多路增廣)+當前弧優化

題目見USACO草地排水一題 #include<iostream> #include<cstring> #include<algorithm> #include<cstdio> #include<cmath> #include<q

原创 STL之deque(雙向隊列)

雙向隊列的操作如下: deque<ll>q;//定義一個雙向隊列q,類型爲long long q.push_front(a);//將a從隊首插入隊列 q.push_back(a);//將a從隊尾插入隊列

原创 BZOJ4518 && SDOi2016 征途

題目的意思就是給出n段路程: 如樣例:1、2、5、8、6 要求分m天走完,使得走完的方差最小,並輸出最小方差*m^2。 比如第一天走:1、2、5,總計8,第二天走8、6,總計14。 已知平均值爲11,那麼答案等於2^2*(

原创 BZOJ1051 HAOI2006受歡迎的牛

請原諒我,這題實在和bzoj1093太像 了,copy過來改一改,很多沒有用,然後一起嘿嘿嘿~ #include<iostream> #include<cstdio> #include<cstring> #include<stri

原创 BZOJ4500矩陣 差分約束判解

我們首先建圖,然後對其進行SPFA差分約束判斷負權迴路,注意開始將點全放入隊列。 #include<iostream> #include<cstring> #include<algorithm> #include<cstdio>

原创 堆優化SPFA

題目:http://acm.zjnu.edu.cn/CLanguage/showproblem?problem_id=1211 #include<iostream> #include<cstring> #include<algor

原创 STL之stack(棧)

棧的操作如下: 1. stack<data_type>name;//如:stack<int>z;定義一個數據類型爲data_type的棧name。 2. stack<data_type>name(name2);//如:stack

原创 差分約束系統詳解 BZOJ 2330 糖果

差分約束系統 有一個男人他是這樣說的 我們有如下幾個式子: A-B<=x —-> A最多比B大x A-C<=y —-> A最多比C大y B-C<=z —-> B最多比C大z 所有的約束

原创 結構體寫法用於set map暫時亂存一下

struct E { ll x; ll y; bool operator <(const E & r)const { return y<r.y; } }; bool cmp

原创 HDU2222 AC自動機模板

#include<iostream> #include<cstring> #include<algorithm> #include<cstdio> #include<cmath> #include<queue> #include<