大型補檔計畫
題目鏈結
題目看的有點暈(語文差)
總體來說就是讓每頭牛找個穀倉,不能超過容量,最小化每頭牛在的穀倉在自己心目中排名的極差。
顯然這個最優性問題不好做,但是轉換為判定性問題這就是乙個標準的二分圖多重匹配(即一頭牛匹配乙個穀倉,一頭牛只能匹配乙個,乙個穀倉接受的牛有上限),所以二分這個極差(顯然滿足單調性),然後列舉左右端點就行了,跑構建網路跑最大流即可。
時間複雜度 \(o(\sqrtmblogb)\),最大邊數 \(m = n * b\) 的規模,所以複雜度 \(o(\sqrtn * b ^ 2 logb)\),大概 \(5e7\) 的量級,還是能混過去的。
注意每次 \(dfs\) 前清空 \(d\) 陣列,太坑了我查了好久。。
#include #include #include using namespace std;
const int n = 1025, s = 25, inf = 1e9;
int n, b, s, t, a[n][s], b[s], d[n], q[n];
int head[n], nume;
struct e e[(n * s + n + s) << 1];
void add(int u, int v, int w) ;
head[u] = nume;
}void addedge(int u, int v, int w)
// 建圖
void build(int l, int r)
bool bfs()
} }return false;
}int dinic(int u, int flow)
} return flow - rest;
}// 所有牛排名控制在 x 以內行不行?
bool check(int x)
return false;
}int main()
printf("%d\n", r);
return 0;
}
NKOI 1513 穩定的奶牛分配
穩定的奶牛分配 time limit 10000ms memory limit 65536k total submit 53 accepted 23 case time limit 1000ms description 農夫約翰有n 1 n 1000 只奶牛,每只奶牛住在b 1 b 20 個奶牛棚中...
穩定盈利的ea 黑牛ea
黑牛交易系統已經 了有2000多套。大家都期待推出全智慧型的ea,終於完善了ea。已經平穩的在實倉中執行了6個月。開了乙個虛擬帳號作演示。黑牛外匯交易系統經過四年的手工交易,已經證實了理論的可靠性,目前已經完全寫成自動交易系統。開始對外 目前公開乙個實時交易帳號,對外驗證。大家可以看到實時交易的情況...
Acwing 125 耍雜技的牛
農民約翰的n頭奶牛 編號為1.n 計畫逃跑並加入馬戲團,為此它們決定練習表演雜技。奶牛們不是非常有創意,只提出了乙個雜技表演 疊羅漢,表演時,奶牛們站在彼此的身上,形成乙個高高的垂直堆疊。奶牛們正在試圖找到自己在這個堆疊中應該所處的位置順序。這n頭奶牛中的每一頭都有著自己的重量wi以及自己的強壯程度...