牛客假日團隊賽11 H 過河卒

2021-09-26 09:29:24 字數 1506 閱讀 4237

題目描述

如圖,a 點有乙個過河卒,需要走到目標 b 點。卒行走規則:可以向下、或者向右。同時在棋盤上的任一點有乙個對方的馬(如上圖的c點),該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。例如上圖 c 點上的馬可以控制 9 個點(圖中的p1,p2 … p8 和 c)。卒不能通過對方馬的控制點。

棋盤用座標表示,a 點(0,0)、b 點(n,m)(n,m 為不超過 20 的整數,並由鍵盤輸入),同樣馬的位置座標是需要給出的(約定: c<>a,同時c<>b)。現在要求你計算出卒從 a 點能夠到達 b 點的路徑的條數。

輸入描述:

輸入b點的座標(n,m)以及對方馬的座標(x,y)

輸出描述:

輸出乙個整數(路徑的條數)。

:0.0

其實這是個很簡單的題,但是,啥也沒想,就莽著上dfs,果然不出所料,tle

下面是我超時的dfs**:

#include

#include

using namespace std;

typedef

long

long ll;

typedef

struct

node;

ll dd[8]

[2]=

;ll dt[2]

[2]=

;ll mp[25]

[25];

ll n,m,x,y;

ll ans=0;

void

dfs(node a)

for(

int i=

0;i<

2;i++)}

}int

main()

dfs(b)

;printf

("%lld\n"

,ans)

;return0;

}

然後看了一波大佬的**,真的簡單orz,而且判斷條件也簡單,馬能跳到的地方可以利用曼哈頓距離來判斷,這裡講一下曼哈頓距離?

曼哈頓距離:計程車幾何或曼哈頓距離(manhattan distance)是由十九世紀的赫爾曼·閔可夫斯基所創詞彙 ,是種使用在幾何度量空間的幾何學用語,用以標明兩個點在標準座標系上的絕對軸距總和…

**:

#include

#include

#include

#include

#define ll long long

using namespace std;

ll mp[25]

[25];

intmain()

}printf

("%lld\n"

,mp[n+1]

[m+1])

;return0;

}

牛客假日團隊賽 A 乘積最大

今年是國際數學聯盟確定的 2000 世界數學年 又恰逢我國著名數學家華羅庚先生誕辰90周年。在華羅庚先生的家鄉江蘇金壇,組織了一場別開生面的數學智力競賽的活動,你的乙個好朋友xz也有幸得以參加。活動中,主持人給所有參加活動的選手出了這樣一道題目 設有乙個長度為n的數字串,要求選手使用k個乘號將它分成...

牛客假日團隊賽11(C題產生數)

牛客假日團隊賽11 c題 給出乙個整數 n n 10 30 和 k 個變換規則 k 15 規則 一位數可變換成另乙個一位數 規則的右部不能為零。例如 n 234。有規則 k 2 2 5 3 6 上面的整數 234 經過變換後可能產生出的整數為 包括原數 234534 264564 共 4 種不同的產...

牛客假日團隊賽5 K

時間限制 c c 1秒,其他語言2秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld 題目描述 最近,奶牛們熱衷於把金幣包在麵粉裡,然後把它們烤成餡餅。第i塊餡餅中含有ni 1 ni 25 塊金幣,並且,這個數字被醒目地標記在餡餅表面。奶牛們把所有烤好的...