1623: 街道路径条数
1623: 街道路徑條數(shù)
時間限制:?1 Sec??內(nèi)存限制:?128 MB提交:?111??解決:?21
[提交][狀態(tài)][討論版]
題目描述
設(shè)有一個N*M(l≤N≤50, l≤M≤50)的街道(如下圖):
規(guī)定行人從A(1,1)出發(fā),在街道上只能向東或向北方向行 走。如圖,從(1,1)點出發(fā),至(3,3)點,共有6條不同的路徑: (1,1)-(2,1)-(3,1)-(3,2)-(3,3); (1,1)-(2,1)-(2,2)-(3,2)-(3,3); (1,1)-(2,1)-(2,2)-(2,3)-(3,3);(1,1)-(1,2)-(2,2)-(3,2)-(3,3); (1,1)-(1,2)-(2,2)-(2,3)-(3,3); (1,1)-(1,2)-(1,3)-(2,3)-(3,3);若在N*M的街道中,設(shè)置一個矩形障礙區(qū)域(包括圍住該區(qū)域的街道)不讓行人通行,如圖中用陰影線表示的部分。此矩形障礙區(qū)域可以用2對頂點坐標給出,如上圖中的障礙區(qū)域以2對頂點坐標(2,2),(8,4)表示。此時,從A(1,1)出發(fā)至B(9,5),只有兩條路徑: 路徑一:(1,1)-(2,1)-(3,1)-(4,1)-(5,1)-(6,1)-(7,1)-(8,1)-(9,1)-(9,2)-(9,3)-(9,4)-(9,5) 路徑二:(1,1)-(1,2)-(1,3)-(1,4)-(1,5)-(2,5)-(3,5)-(4,5)-(5,5)-(6,5)-(7,5)-(8,5)-(9,5) 程序要求:給出N,M,同時再給出此街道中的矩形障礙區(qū)域的2對頂點坐標(X1,Y1), (X2,Y2), 然后求出此種情況下所有從(1,1)出發(fā)到達(N,M)的路徑的條數(shù)。
輸入
第一行有兩個數(shù)字,表示N和M; 第二行有兩個數(shù)字,表示矩形障礙的左下角坐標; 第三行有兩個數(shù)字,表示矩形障礙的右上角坐標;輸出
只有一個數(shù)字,表示求得的路徑條數(shù)。樣例輸入
9 5 2 2 8 4樣例輸出
2提示
來源
?
?
高精度
分析:
?
| ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| ? | ? | ? | ? | ? | ? | ? | ? | ? | ? |
| ? | ? | ? | ? | ? | ? | ? | ? | (9,5) | ? |
| ? | ? | ? | ? | ? | ? | ? | (8,4) | ? | ? |
| ? | ? | (3,3) | ? | ? | ? | ? | ? | ? | ? |
| ? | (2,2) | ? | ? | ? | ? | ? | ? | ? | ? |
| (1,1) | ? | ? | ? | ? | ? | ? | ? | ? | ? |
?
?
?
?
把中間陰影部分置為不可訪問。
bool canvis[n][m]={true};
dp[i][j]表示走到(I,j)點的路徑條數(shù)。
dp[i][j]=max(dp[i][j+1],dp[i+1][j])+1;
?
if(vis[i][j+1]){
???????? dp[i][j]=max(dp[i][j], dp[i][j+1]+1);
}
if(vis[i+1][j]){
???????? dp[i][j]=max(dp[i][j], dp[i+1][j]+1);
}
?
總結(jié)
以上是生活随笔為你收集整理的1623: 街道路径条数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux CentOS6编译安装Pyt
- 下一篇: netty里集成spring注入mysq