一開始以為跑費用流,後來看了題解才知道可以按天建圖。
1.從源點向每一天的地球鏈結一條inf
2.從每一天的月亮向匯點鏈結一條inf
4.針對每一艘飛船,獲取其上一天的位置,再獲取這一天的位置,在這兩個點之間連一條容量為飛船滿載人數的流
每次新加一天然後跑到最大流超過k即可
至於無解的情況只要當ans達到乙個很大的值的時候跳出來即可
1 #include2using
namespace
std;
3const
int n=1e5+10,inf=1e9;
4int head[n],cnt=-1,v[n],h[n],p[n],n,m,k,s,t,day[25][25
];5 queueq;
6struct
nodee[n<<1];9
void add(int x,int y,int
w)10
14bool bfs(int x,int
y)1527}
28return v[y]!=-1;29
}30int dfs(int x,int w,int
yy)31
39 s+=flow;e[i].w-=flow;e[i^1].w+=flow;
40if(s==w)return
s;41}42
return
s;43}44
int dinic(int x,int
y)45
51return
tmp;52}
53int
main()
5465
}66 s=10001,t=10000;int ans=0;int sum=0;67
while(ans<=500)68
79}80 sum+=dinic(s,t);
81if(sum>=k)
8286 ans++;87}
88 puts("0"
);89
return0;
90 }
網路流24題 星際轉移問題
這個問題的難點在於如何表示時間的流逝很容易 想到源點 是地球,然後中間 一串的空 間站,最 後連向匯 點月 球很容易想到源點是地球,然後中間一串的空間站,最後連向匯點月球 很容易想到源 點是地球 然後中 間一串的 空間站,最後連向 匯點月球空間 站間各自 連邊,流 量是飛船 的容 量空間站間各自連邊...
網路流24題 星際轉移問題
description 由於人類對自然資源的消耗,人們意識到大約在 2300 年之後,地球就不能再居住了。於是在月球上建立了新的綠地,以便在需要時移民。令人意想不到的是,2177 年冬由於未知的原因,地球環境發生了連鎖崩潰,人類必須在最短的時間內遷往月球。現有 n 個太空站位於地球與月球之間,且有 ...
網路流 24 題 星際轉移
題目描述 由於人類對自然資源的消耗,人們意識到大約在 2300 年之後,地球就不能再居住了。於是在月球上建立了新的綠地,以便在需要時移民。令人意想不到的是,2177 年冬由於未知的原因,地球環境發生了連鎖崩潰,人類必須在最短的時間內遷往月球。現有 n n n 個太空站位於地球與月球之間,且有 m m...