BSOJ 3800 染色 貪心

2021-07-24 11:25:47 字數 1579 閱讀 5152

3800 – 【四校聯考1】染色

description

人人生而平等,然而後來人們逐漸選擇了不同的道路,人與人之間,變得不再平等。你可能會因為染上惡人之色而墮落,成為社會的敗類;你也可能因為染上善人之色,而在逆境中不斷成長。但是,紅與黑並非絕對的。所謂「近朱者赤,近墨者黑」,你能改變周遭的環境,那麼周遭的環境也會影響你。在黑暗的人群中,善人之色是明亮的,而在明亮的人群中,善人之色的存在就會顯得微薄。你的顏色,依靠著你自己的意志在選擇。

如今,你獲得了一次重生,你要為自己,以及你周圍的人們,重新染上一種你真正想要的顏色。具體來說,你的圈子裡總共有n個人,每個人你可以選擇為其重新染色,或者不染。對於第i個人,如果他/她被重新染色,那麼這將會對社會帶來wi的改變。同時,朋友關係也會對社會帶來改變,如果i,j是朋友,那麼他/她們會對社會帶來的改變w(i,j)滿足

輸出僅一行為乙個整數,對社會產生的總的改變的最大值。

sample input

3 1 2 3

2 1 2 1

2 3 2

sample output

9hint

【資料規模與約定】

對於40%的資料,m=0。

對於另外40% 的資料,n,m≤20。

對於所有資料,n,m≤10^5。

一開始還以為是一道很難的圖論..結果證明我傻了,可以證明2個點之間的狀態只能是均被染色或均未被染色,把邊權分兩種情況放在點權上,累加兩種情況最大值即可。

#include

#include

#include

#include

#include

#define ll long long

//#include

using

namespace

std;

inline ll read()

ll ret=0;

while(ch>='0'&&ch<='9')ret=ret*10+ch-'0',ch=getchar();

return ret*bj;

}ll n,m;

double x[100005],y[100005],ans=0.0;

int main()

for(ll i=1;i<=n;i++)ans+=max(x[i],y[i]);

printf("%lld\n",(ll)(ans));

return0;}

/*>sample input:

31 2 3

21 2 1

2 3 2

>ans:

9*/

BSOJ3800 四校聯考1 染色 貪心

3800 四校聯考1 染色 description 人人生而平等,然而後來人們逐漸選擇了不同的道路,人與人之間,變得不再平等。你可能會因為染上惡人之色而墮落,成為社會的敗類 你也可能因為染上善人之色,而在逆境中不斷成長。但是,紅與黑並非絕對的。所謂 近朱者赤,近墨者黑 你能改變周遭的環境,那麼周遭的...

BSOJ 3362 聰明的農民 貪心

3362 模擬試題 聰明的農民 description 在城中有乙個貪婪而愚蠢的領主,他總是不管農民的死活,瘋狂地敲詐農民們辛勤耕種的勞動成果。眼看每年的秋收日十月十日已經到了,這時城中所有的農民在忙完一年的收成後,又要向領主上繳一年的糧食了。很久以來當地就採用乙個特殊的 抽籤 決定各戶農民上繳糧食...

BSOJ 3799 訓練場 貪心 倍增

3799 模擬試題 訓練場 description 某中學有很多學生社團,其中電競社是最受歡迎的乙個。該社團中總共有n只遊戲戰隊,但是該中學只有乙個遊戲訓練場館,每次只能容納乙隻戰隊訓練。每只戰隊對訓練時間都有一定的要求,比如甲戰隊想要在a到b這段時間訓練,乙戰隊想要在c到d這段時間訓練,作為訓練場...