【dfs】I Like Matrix!
生活随笔
收集整理的這篇文章主要介紹了
【dfs】I Like Matrix!
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
I Like Matrix!
題目大意:
有一個(gè)矩陣,還有一些走法,從1,1開(kāi)始可以走到多少個(gè)位置
原題:
題目描述
給定 k 種移動(dòng)方式:從 (i, j) 移動(dòng)到 (i + xk, j + yk)(xk, yk > 0)。詢問(wèn)在一個(gè) n ? m 的矩陣中,
從 (1, 1) 出發(fā),可以到達(dá)多少個(gè)位置。
輸入
第一行包含三個(gè)整數(shù) n,m 和 k。
之后 k 行每行包含兩個(gè) xi 和 yi。
輸出
共一行包含一個(gè)整數(shù) ans,表示可以到達(dá)的位置個(gè)數(shù)。
輸入樣例
5 5 2 2 1 1 3輸出樣例
5說(shuō)明
對(duì)于 100% 的數(shù)據(jù):n, m ≤ 100,k ≤ 10
解題思路:
dfs枚舉每一步即可
代碼:
#include<cstdio> int n,m,k,ans,dx[15],dy[15],p[105][105]; using namespace std; void dfs(int x,int y) {if(x>n||y>m) return;//出界if (p[x][y]) return;//到過(guò)了p[x][y]=true;ans++;for (int i=1;i<=k;++i)dfs(x+dx[i],y+dy[i]);//走下一步 } int main() {scanf("%d %d %d",&n,&m,&k);for (int i=1;i<=k;++i)scanf("%d %d",&dx[i],&dy[i]);dfs(1,1);printf("%d",ans); }總結(jié)
以上是生活随笔為你收集整理的【dfs】I Like Matrix!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 公共wifi如何用路由连接路由器怎么连接
- 下一篇: 【DP】I Will Like Matr