網路流 24 題 10 軟體補丁

2021-08-19 13:55:27 字數 901 閱讀 7067

題意

一開始有乙個軟體有n個bug,然後開發商整了m個補丁。

對於每乙個補丁都有四個集合b1,b2,f1,f2和乙個整數cost組成。

對於對於當前軟體能夠使用乙個補丁當且僅當,

b1集合裡的所有bug都出現在當前軟體內,b2集合中的所有bug都不出現在當前軟體內。

這個時候使用補丁的效果就是

如果f1中的bug出現在當前軟體內,那麼這個bug被修復。同時f2的所有bug都出現在軟體內。

求最小花費使得軟體不存在bug

n<=20 m<=100

分析看起來非常的像狀壓。但是實際上似乎就是狀壓

所以放在網路流24題裡是什麼意思呢…還是我姿勢水平不對?

然後就考慮n非常小,所以狀壓表示。

然後這裡建邊顯然是不合理的所以對於每個點都需要掃一遍看這條邊能不能連出去。然後轉移就好了。

反正沒有負權用dijkstra穩的一批。

然後就沒了。

code

#include

using

namespace

std;

void read(int &x)

#define pii pair

#define a first

#define b second

#define mp make_pair

priority_queue< pii >q;

int dis[1

<<20],m;

bool vis[1

<<20];

struct node

int cl(int x)

}a[105];

void dijkstra(int x)

總結

總之想到什麼就先大膽的瞎寫吧…這樣。

網路流 24 題 軟體補丁

題目描述 某公司發現其研製的乙個軟體中有 n n n 個錯誤,隨即為該軟體發放了一批共 m m m 個補丁程式。每乙個補丁程式都有其特定的適用環境,某個補丁只有在軟體中包含某些錯誤而同時又不包含另一些錯誤時才可以使用。乙個補丁在排除某些錯誤的同時,往往會加入另一些錯誤。換句話說,對於每乙個補丁 i ...

網路流24題 軟體補丁問題

description t 公司發現其研製的乙個軟體中有 n 個錯誤,隨即為該軟體發放了一批共 m 個補丁程式。每乙個補丁程式都有其特定的適用環境,某個補丁只有在軟體中包含某些錯誤而同時又不包含另一些錯誤時才可以使用。乙個補丁在排除某些錯誤的同時,往往會加入另一些錯誤。換句話說,對於每乙個補丁 i ...

網路流24題 軟體補丁問題

題目傳送門 好久之前做的 2,現在才寫部落格 填一下網路流24題的坑 狀壓集合 b1,b2 對於乙個補丁 i 向 b1 i 和 b2 i 之間連一條邊權為所需時間的單向邊 然後跑最短路就好了 又是一道沒有網路流的網路流24題 include include include include inclu...