原題**於洛谷:p1518 [usaco2.4]兩隻塔姆沃斯牛 the tamworth two
追擊在 10×10 的平面網格內進行。乙個格仔可以是:乙個障礙物,兩頭牛(它們總在一起),或者 farmer john。兩頭牛和 farmer john 可以在同乙個格仔內(當他們相遇時),但是他們都不能進入有障礙的格仔。
輸入共十行,每行 10 個字元,表示地圖。
輸出乙個數字,表示 john 需要多少時間才能抓住牛們。如果 john 無法抓住牛,則輸出 0。
牛在地圖裡以固定的方式遊蕩。最開始時向北。每分鐘,它們可以向前移動或是轉彎。如果前方無障礙(地圖邊沿也是障礙),它們會按照原來的方向前進一步。否則它們會用這一分鐘順時針轉 90 度。 同時,它們不會離開地圖。
farmer john 深知牛的移動方法,他也這麼移動。
分析:
由遇到邊界和障礙『*』皆拐彎,不妨讓邊界初始化為』*』。
對於拐彎,可以設定四個方向分別對應變數m的0,1,2,3,這樣處理拐彎就處理m的值即可。
對於判斷農夫追不追得到牛,只要設定乙個極偏變數ox,再定義乙個布林雜湊px,如果這個偏僻的變數出現兩次就可以說明是死迴圈了,即農夫追不到牛。
#include
using
namespace std;
static
char map1[
1001][
10001];
static
bool px[
1000100]=
;static
int ox;
struct per
}farmer,cow;
void
move1
(per &a)
else
}else
if(a.m==1)
else
}else
if(a.m==2)
else
}else
if(a.m==3)
else}}
intmain()
for(
int i=
1;i<
11;i++
)else
if(map1[i]
[k]==
'c')}}
while(1
) px[ox]=1
;move1
(cow)
;move1
(farmer)
; sum++
;//過一秒。
if(farmer.x==cow.x&&farmer.y==cow.y)
}return0;
}
**如上,歡迎討論。 網路 牛客 關於網路的一些問題
1 哪個屬於b類的私有ip位址是?a 10.16.220.100 b 172.16.220.100 c 172.32.220.100 d 192.168.220.100解析 b a類位址的第一位為0 b類位址的前兩位為10 c類位址的前三位為110 d類位址的前四位為1110 e類位址的前五位為11...
問題 A 牛妹的蛋糕
題目描述 眾所周知,牛妹非常喜歡吃蛋糕。第一天牛妹吃掉蛋糕總數三分之一多乙個,第二天又將剩下的蛋糕吃掉三分之一多乙個,以後每天吃掉前一天剩下的三分之一多乙個,到第n天準備吃的時候只剩下乙個蛋糕。牛妹想知道第一天開始吃的時候蛋糕一共有多少呢?輸入輸入n,0 通過可以設立方程,設原先有x個,第二天為x ...
關於 zblog 的七牛官方外掛程式
錯誤 新建文章的等為什麼不自動儲存到雲了?是否更新了sdk而外掛程式沒更新呢?手動上傳的附件能到自動上傳的七牛空間,但是點選鏈結檢視 提示 錯誤 新建文章的等為什麼不自動儲存到雲了?是否更新了sdk而外掛程式沒更新呢?問題應該是 dows.qiniudn.com 這個網域名稱並不是配置在七牛空間中的...