CTSC 1999 家園 網路流24題 星際轉移

2022-05-28 00:54:09 字數 947 閱讀 8715

直接把每乙個點,每一天拆成乙個點。

然後每個點到下一天連$inf$的邊。

然後把飛船的路徑用容量為飛船容量的邊連線。

然後跑網路流判斷是否滿流。

#include #include #include #include #include using namespace std;

#define f(i,j,k) for (int i=j;i<=k;++i)

#define d(i,j,k) for (int i=j;i>=k;--i)

#define inf 0x3f3f3f3f

#define maxn 500005

int n,m,k,p[25],flag=0,s=0,t=maxn-1,ans=0;

int sta[25][25],num[25];

int h[maxn],to[maxn],ne[maxn],fl[maxn],fr[maxn],en=0;

int hash[25][500],cnt=0,dis[maxn];

queue q;

void add(int a,int b,int c)

bool tell()

} }if (dis[t]==-1) return false;

return true;

}int zeng(int k,int now)

if (!r) dis[k]=-1;

return r;

}int main()

} f(i,0,n+1)

f(j,0,205)

hash[i][j]=++cnt;

add(s,hash[0][0],k);

add(hash[n+1][0],t,inf);

for (int z=0;z<=200;++z) }

if (!flag) printf("%d\n",0);

}

CTSC1999 家園(網路流)

由於人類對自然資源的消耗,人們意識到大約在 2300 年之後,地球就不能再居住了。於是在月球上建立了新的綠地,以便在需要時移民。令人意想不到的是,2177 年冬由於未知的原因,地球環境發生了連鎖崩潰,人類必須在最短的時間內遷往月球。現有 n 個太空站位於地球與月球之間,且有 m 艘公共運輸太空船在其...

題解 CTSC1999家園 網路流

建模方法類似我noi2019網路同步賽我的t1寫法 題解 noi2019route 70分 問題的焦點是 空間時間載具。下面這個圖會非常清楚 咕咕咕寫的話有點麻煩,模組化程式設計就稍微好寫點。資料範圍不超過100,不用怕mle,tle。發現一種很好用的除錯技巧,就是在add函式中輸出fr to w ...

網路流24題 CTSC1999 家園

地球和月球中間有 n n 個太空站,有 m role presentation m m艘太空船,k k 個人要從地球前往月球。已知每個太空站可以容納無限多的人,每艘太空船的承載人數為 hi role presentation hih i,以及它們的行駛路線 經過的每乙個太空站編號 任意兩個太空站之間...