2020 03 11模擬賽15(第四題)

2021-10-04 03:49:19 字數 1801 閱讀 9266

題目描述

farmer john 最近正在修建乙個巨大的包含 n×n 個房間的牲口棚,這些房間從(1,1)標號到(n,n)。由於某些原因而害怕黑暗,貝茜這頭奶牛想要盡可能地開更多房間的燈。貝茜從房間(1,1)出發,這個房間是唯一乙個一開始就亮著的房間。在一些房間中,她會找到一些電燈開關,這些開關她可以用來切換其他房間的燈的狀態。比如,在(1,1)這個房間中可能存在乙個電燈開關來控制(1,2)房間中的電燈。貝茜只能進電燈開著的房間,並且貝茜只能從房間(x,y)走到四個方向的房間(x-1,y),(x+1,y),(x,y-1)和(x,y+1)(如果在邊界的話,那可能會更少)。請幫忙統計貝茜最多可以照亮多少房間。

輸入

第一行兩個整數 n,m(2<=n<=100,1<=m<=20,000)

下面 m 行,每行用四個整數 x,y,a,b 來表示房間(x,y)存在著可以控制房間(a,b)的燈的開關。乙個房間可能有多個開關,乙個房間的燈的開關可能存在於多個房間中。

輸出

一行乙個整數,表示貝茜最多可以照亮的房間數

樣例輸入

3 61 1 1 2

2 1 2 2

1 1 1 3

2 3 3 1

1 3 1 2

1 3 2 1

樣例輸出5

提示

在這個樣例中,貝茜可以使用房間(1,1)內的開關開啟房間(1,2)和(1,3)的燈。然後她可以走到(1,3),使用(1,3)內的開關開啟(2,1)的燈,接著可以通過(2,1)開啟(2,2)的燈,然而(2,3)是黑暗的,她無法去開啟(2,3)房間裡的開關,因此,她最多只能開啟 5個房間裡的燈。

正解

乙個bfs就ok了

ac**

#include

#include

using

namespace std;

int n,m,x,y,h,t,s,x1,y1,tot;

int xx[

20005

],yy[

20005

],b[

105]

[105

],c[

105]

[105

],head[

105]

[105];

int dx[5]

=;int dy[5]

=;struct node

a[20005];

void

add(

int x,

int y,

int x1,

int y1)

//鄰接表

void

bfs()}

}}intmain()

bfs();

for(

int i=

1;i<=n;i++

)//暴力一遍看有多少個房間亮著

for(

int j=

1;j<=n;j++)if

(c[i]

[j]==

1)s++

; cout

}

2020.03.11模擬賽15(第一題)

2020.03.11模擬賽15(第二題)

2020.03.11模擬賽15(第三題)

2020.03.11模擬賽15(第四題)

2020.03.11模擬賽15(總結)

2020 03 11模擬賽15(總結)

t1 比賽時出錯,遞迴喝水出現問題,樣例過了,最後8.3分,後來找到遞迴的問題,改過來成功ac t2比賽用了二分,開始樣例不對,發現時二分的問題,把迴圈中的判斷改了一下就對了,最後ac t3不會分組揹包,比賽打了01揹包騙分,最後得了30分,後來知道了正解是分組揹包,上網學習了分組揹包,套用模板就a...

2020 03 11模擬賽15(第三題)

題目描述 你是一名記者,現在要求你去採訪n 個國家的領導人。採訪每乙個國家的領導人需要消耗你的時間為t i 但你可以收穫價值為v i 的資訊,然後就能寫成報道 然而尷尬的是,有一些國家之間的關係屬於敵對關係,因此如果乙個國家的領導人知道你採訪了他的敵對國家領導人,那麼他就會拒絕你的採訪。總之,你採訪...

2020 02 29模擬賽11(第四題)

題目描述 4和7是味味的幸運數字。幸運數是那些只由幸運數字組成的正整數。如47,477是幸運數,而5,17,417 就不是幸運數。定義next x 為大於或等於x的最小的幸運數。味味對以下表示式的值很感興趣 next l next l 1 next r 1 next r 現在告訴你l和r的值,希望你...