羅伯特是一位著名的工程師 有一天,老闆給了他一項任務。該任務的背景如下:
給定乙個由方塊組成的地圖。有三種塊:wall,grass和empty。他的老闆想在地圖上放置盡可能多的機械人。每個機械人都持有乙個雷射**,可同時向四個方向(北,東,南,西)射擊。機械人不得不一直呆在最初放置的地方,並一直**。雷射束當然可以通過grass的網格,但無法通過wall網格。機械人只能放在空塊中。當然老闆不希望看到乙個機械人傷害另乙個機械人。換句話說,兩個機械人不得放在一條線上(水平或垂直),除非它們之間有牆。
既然你是乙個聰明的程式設計師和羅伯特最好的朋友之一,他就會請你幫他解決這個問題。也就是說,給定地圖的描述,計算可以放置在地圖中的最大機器人數。
輸入第一行包含乙個整數t(<= 11),它是測試用例的數量。
對於每個測試用例,第一行包含兩個整數m和n(1 <= m,n <= 50),它們是對映的行和列大小。然後是m行,每行包含n個字元』#』,』*『或』o』,分別代表wall,grass和empty。
輸出對於每個測試用例,首先輸出一行中的案例編號,格式為:「case:id」,其中id是測試用例編號,從1開始計數。在第二行只輸出可以是的最大機器人數放在那張地圖上。
樣本輸入
24 4
o ***
oo#o
*** o
4 4#ooo
o#oo
oo#o
***#
樣本輸出
案例:1
3案例:2
5解析:構圖比較麻煩,將行有空地且能互相攻擊的放入a陣列,將列的放入b陣列,其他還好,有些細節要注意
#include #include#include#include using namespace std;
vector f[2505];
char mapa[55][55];
int n,m,t,x=1,y=1,cs,a[55][55],b[55][55],link[2505],z;
bool color[2505];
bool find (int i)
if (mapa[i][j]=='o')
if (mapa[i][j]=='#'&&p==1)
}p=0;
for (int i=1;i<=m;i++)
for (int j=1;j<=n;j++)
if (mapa[j][i]=='o')
if (mapa[j][i]=='#'&&p==1)
}return;
} void lb ()
memset(link,0,sizeof(link));
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
cin>>n>>m;
x=1;y=1;
jm();
lb();
int ans=0;
for (int j=1;j<=z;j++)
cout<<"case :q"
}
ZOJ1654 放置機械人
時間限制 1 sec 記憶體限制 256 mb robert是一位著名的工程師。一天他的老闆給了他乙個任務。任務的背景如下 給出一張由方塊組成的地圖。方塊有許多種 牆,草,和空地。老闆想讓robert在地圖上放置盡可能多的機械人。每個機械人拿著一把雷射槍,它可以同時向東西南北四個方向射擊。機械人必須...
好色機械人的豔遇 機械人豔遇 《機械人的旅行》
講述機械人 路遇開房車的 剛剛開始的時候畫風很舒服,直到到了晚上上了她的床之後。畫風速變了!這個女主角聲音超好聽。整個情節實在太流氓了,太猥瑣了!連六六君這樣的老司機都看不下去了!正片在三分五十,不謝 很抱歉,此內容已經失效了!就連六六君也無法恢復了。請欣賞其他有效的內容 當您看到這條資訊的時候,很...
2017 04 19 特種機械人 獵豹機械人介紹
仿生機械人 獵豹機械人 說起機械人,可能由於受名詞中 人 字的影響,大部分人腦海裡出現的可能要麼是憨態可掬 動作靈活的小nao機械人,要麼是彬彬有禮 動作規範的asimo機械人,亦或是電影 人工智慧 裡有著和人一模一樣的外表的大衛。其實,這些機械人都屬於仿人機械人,這些機械人是模仿人的形態和行為而被...