codevs2693 上学路线(施工)
生活随笔
收集整理的這篇文章主要介紹了
codevs2693 上学路线(施工)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
難度等級:黃金
2693 上學(xué)路線(施工)
題目描述?Description問題描述
?你所在的城市街道好像一個棋盤,有a條南北方向的街道和b條東西方向的街道。
?? 南北方向a條街道從西到東依次編號為1到a,而東西方向的b條街道從南到北依次編號為1到b,南北方向的街道i和東西方向的街道j的交點記為(i,j)。
?? 假定你住在(1,1)處,而學(xué)校在(a,b)處,你騎自行車去上學(xué),自行車只能沿著街道走,而且為了縮短時間只允許沿著東、北方向行駛。
?? 現(xiàn)在有n個交叉路口在施工(X1,Y1),(X2,Y2),(Xn,Yn),這些路口暫時不能通車。問你上學(xué)有多少種走法?
輸入描述?Input Description? 共二行。
? 第一行包含兩個整數(shù)a和b,并且滿足1<=a,b<=16.
? 第二行包含一個整數(shù)n,表示有n個路口在維修(1<=N<=40)。
? 接下來的n行,每行兩個整數(shù)X_i、Y_i,描述路口的位置。
輸出描述?Output Description輸出一個整數(shù)表示從(1,1)到(a,b)的騎車路線總數(shù)。
?? 只有一行
樣例輸入?Sample Input5 4
3
2 2
2 3
4 2
樣例輸出?Sample Output5
#include<iostream> using namespace std; int a,b,c,s; bool v[20][20]; void dfs(int x,int y) {if(x==a&&y==b) {s++;return ;}if(x<a&&!v[x+1][y]) dfs(x+1,y);//往北if(y<b&&!v[x][y+1]) dfs(x,y+1);//往東 } int main() {cin>>a>>b>>c;for(int i=1;i<=c;i++){int x,y;cin>>x>>y;v[x][y]=true;//true代表正在施工 }dfs(1,1);cout<<s; }?
轉(zhuǎn)載于:https://www.cnblogs.com/TheRoadToTheGold/p/6160032.html
總結(jié)
以上是生活随笔為你收集整理的codevs2693 上学路线(施工)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt实现FlatUI样式(开源)
- 下一篇: 如何组建测试团队?