[jzoj5972]wang(最小權匹配=最小費用最大流、貪心、結論題)
5972. 【北大2019冬令營模擬12.1】 wang(2s,256MB)
Problem
-
給定一個定義域和值域都在 Z上的函式 F(x),且給定一個常數 C,且滿足 F(2F(x)−x+1)=F(x)+C
-
現在給定你 n個二元組 (xi,yi),要求最小化 i=1∑n∣F(xi)−yi∣
Data constraint
-
C≤60
-
n≤10000
Solution
-
性質①
F(x+2C)=F(x)+2C
證明①
令 y=2F(x)−x+1
則
F(y)=F(x)+C ⇓ F(y)+C=F(x)+2C ⇓ F(2F(y)−y+1)=F(x)+2C 2F(y)−y+1=2F(y)−2F(x)+x=x+2C ⇓ F(x+2C)=F(x)+2C
-
性質②:
-
若 a+b=2t+1,F(a)=t
-
則 F(a)+F(b)=2t+C
-
證明②
- 令 a=2a′,b=2b′+1,t=a′+b′
- 則 F(2F(a)−a+1)=F(a)+C ⇓ F(2(t+nC)−a+1)=t+nC+C ⇓ F(2t−a+1+2nC)=t+nC+C ⇓ F(2t−a+1)+2nC=t+nC+C ⇓ F(b)=t−(n−1)C
-
然後根據這兩個性質,把所有的 X
相關推薦
[jzoj5972]wang(最小權匹配=最小費用最大流、貪心、結論題)
5972. 【北大2019冬令營模擬12.1】 wang(2s,256MB) Problem 給定一個定義域和值域都在 Z
POJ 2195 Going Home(最小權匹配、KM演算法)
題目連結: POJ 2195 Going Home 題意: 給出一個r*c的矩陣,字母H代表房屋,字母m代表客人,房屋的數量和客人的數量相同。每間房只能住一個人。求這些客人全部住進客房的最少移動步數? #include <cstdio>
hdu 1533 Going Home(最小權匹配KM)
Problem Description On a grid map there are n little men and n houses. In each unit time, every little man can move one unit step, eith
Fixed Partition Memory Management UVALive - 2238 建圖很巧妙 km算法左右頂點個數不等模板以及需要註意的問題 求最小權匹配
-1 program push_back 訓練指南 const 完成 ons tin 方法 /** 題目: Fixed Partition Memory Management UVALive - 2238 鏈接:https://vjudge.net/problem/UVA
POJ 2195 二分圖最小權匹配KM演算法
本來是打算昨天晚上寫的, 昨天網速渣的連CSDN都進不去,沒辦法 只能現在來寫了 先寫寫對KM演算法的理解,KM演算法是對每個點設定一個頂標,只有當邊長等於兩邊點的頂標之和的時候才進行增廣,這樣就能保證得到的一定是最大權匹配。 如果找不到匹配的時候就對交替路中X集合的頂標減
poj 3565 Ants 最小權匹配
Young naturalist Bill studies ants in school. His ants feed on plant-louses that live on apple trees. Each ant colony needs its own apple tree to feed its
HDU 1853 & HDU 3488【有向環最小權值覆蓋問題 】最小費用最大流
題意: 給出n個點m條單向邊邊以及經過每條邊的費用,讓你求出走過一個哈密頓環(除起點外,每個點只能走一次)的最小費用。 解析: 任意類似的【有向環最小權值覆蓋】問題,都可以用最小費用流來寫。 由於題目中要求每個點最多走一次,為了防止走多次的發生,我們要把每個點 i 拆
HDU 4309 Seikimatsu Occult Tonneru(最大流+二進制枚舉)
emp puts open 通過 txt add 枚舉 sin ridge http://acm.hdu.edu.cn/showproblem.php?pid=4309 題意: 有n個城市,每個城市有num[i]個居民,有敵人要進行地毯式轟擊,居民們要逃到隧道去。現在有
BZOJ 3218 A+B Problem(最大流 + 主席樹優化建圖)
分享 bzoj post 感覺 線段樹 不能 line 需要 clas 題目:A+B Problem 感謝 Nietzsche 在省選緊迫之際花 39‘ 給我講這道題。 這題我並沒有想出來,感覺又浪費一道好題了。 需要用最小割,建模方式如下(假設若 2 取黑色,1 取白
1459 Power Network解題報告(網路流最大流 超級源點建圖)
題目大意: 有三種結點,第一種是發電站,它能不會消耗電能;一種是使用者,他不會產生電能;再有一種就是一個我不認識的單詞,它既不會產生電也不會消耗電。每個點都有兩個屬性,產生電量,消耗電量;現在問你最多這個網路能消耗多少的電量。 分析: 網路流建圖:
HDU 3549 Flow Problem(最大流裸題,EK解法)
EK現在用起來已經比較熟練了,比較簡單的題目,直接就可以解決,但發現EK,其實效率有些低,是O(V*E^2)的,搞不好,還會超時。同時看別人的部落格,發現用EK的比較少。今天,聽學長講,dinic用的比較多,sap學起來有一定難度,接下來抓緊學一下dinic! 好了,廢話不
HDU 3549 Flow Problem 網路最大流問題 EK、Dinic、ISAP三種演算法
Flow Problem Time Limit: 5000/5000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total Submission(s): 8218 Accepted
51nod1967 路徑定向(歐拉回路+結論題)
void ++i col () view const stdio.h turn char 看到入度等於出度想到歐拉回路。 我們把邊都變成無向邊,有一個結論是偶數度的點都可以變成出入度相等的點,而奇數點的不行,感性理解分類討論一下就知道是對的。 還有一個更好理
2018.11.06【HNOI2010】【洛谷P3209】【BZOJ1997】平面圖判定Planar(二分圖染色)(結論題)
BZOJ傳送門 洛谷傳送門 解析: 首先記住一個結論:對於任意平面圖都有 ∣ E ∣
【BZOJ 3613】【Heoi2014】南園滿地堆輕絮(貪心結論題)
一開始在往平均數那方面想 但是好像是錯的 我們這樣想 每當加入一個數 如果他與之前構成的是上升的就不管 如果是下降的 那肯定要折中 變成中間值才能最小 即答案就是最大的逆序對差值/2 #include<bits/stdc++.h> #define ll long long #define N 50
2018.10.15【BZOJ4766】文藝計算姬(矩陣快速冪)(矩陣樹)(prufer序列)(結論題)
傳送門 解析: 顯然可以用Matrix−TreeMatrix-TreeMatrix−Tree來做 推導。 思路: 我們直接建出基爾霍夫矩陣HHH,顯然我們可以把它分成四塊: 左上角為AAA是一個n×n
POJ 2404 Jogging Trails(最小權完美匹配)
pan [0 const 之間 brush 歐拉回路 如果 ref %d 【題目鏈接】 http://poj.org/problem?id=2404 【題目大意】 給出一張圖,求走遍所有的路徑至少一次,並且回到出發點所需要走的最短路程 【題解】
POJ-2195 Going Home---KM算法求最小權值匹配(存負邊)
for 二分圖 ostream lse ons nod esp 範圍 預處理 題目鏈接: https://vjudge.net/problem/POJ-2195 題目大意: 給定一個N*M的地圖,地圖上有若幹個man和house,且man與house的數量一致。man每移動
poj3565 Ants km算法求最小權完美匹配,浮點權值
相交 else 浮點數 獲取 外部 ring 找不到 cst 如果能 /** 題目:poj3565 Ants km算法求最小權完美匹配,浮點權值。 鏈接:http://poj.org/problem?id=3565 題意:給定n個白點的二維坐標,n個黑點的二維坐標。 求是
hdu1533 Going Home km算法解決最小權完美匹配
number send hdu 所有 end man rest until 相反數 Going Home Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)