日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

洛谷——P1002 过河卒||codevs——T1010 过河卒

發布時間:2024/4/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 洛谷——P1002 过河卒||codevs——T1010 过河卒 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

https://www.luogu.org/problem/show?pid=1002#sub||http://codevs.cn/problem/1010/

題目描述

棋盤上A點有一個過河卒,需要走到目標B點。卒行走的規則:可以向下、或者向右。同時在棋盤上C點有一個對方的馬,該馬所在的點和所有跳躍一步可達的點稱為對方馬的控制點。因此稱之為“馬攔過河卒”。

棋盤用坐標表示,A點(0, 0)、B點(n, m)(n, m為不超過20的整數),同樣馬的位置坐標是需要給出的。

現在要求你計算出卒從A點能夠到達B點的路徑的條數,假設馬的位置是固定不動的,并不是卒走一步馬走一步。

輸入輸出格式

輸入格式:

?

一行四個數據,分別表示B點坐標和馬的坐標。

?

輸出格式:

?

一個數據,表示所有的路徑條數。

?

輸入輸出樣例

輸入樣例#1:
6 6 3 3 輸出樣例#1:
6

說明

結果可能很大!

?

注意越界處理

1 #include <algorithm> 2 #include <iostream> 3 #include <cstdio> 4 5 using namespace std; 6 7 long long n,m,x,y; 8 long long map[350][350]; 9 long long f[350][350]; 10 11 int main() 12 { 13 cin>>n>>m>>x>>y; 14 map[x][y]=1; 15 if(x+1>=0&&y+2>=0) map[x+1][y+2]=1; 16 if(x+1>=0&&y-2>=0) map[x+1][y-2]=1; 17 if(x+2>=0&&y+1>=0) map[x+2][y+1]=1; 18 if(x+2>=0&&y-1>=0) map[x+2][y-1]=1; 19 if(x-1>=0&&y+2>=0) map[x-1][y+2]=1; 20 if(x-1>=0&&y-2>=0) map[x-1][y-2]=1; 21 if(x-2>=0&&y+1>=0) map[x-2][y+1]=1; 22 if(x-2>=0&&y-1>=0) map[x-2][y-1]=1; 23 f[0][0]=1; 24 for(int i=0;i<=n;i++) 25 for(int j=0;j<=m;j++) 26 if(map[i][j]) f[i][j]=0; 27 else 28 { 29 if(i) f[i][j]+=f[i-1][j]; 30 if(j) f[i][j]+=f[i][j-1]; 31 } 32 cout<<f[n][m]; 33 return 0; 34 }

?

轉載于:https://www.cnblogs.com/Shy-key/p/6745277.html

總結

以上是生活随笔為你收集整理的洛谷——P1002 过河卒||codevs——T1010 过河卒的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。