取數字問題

2021-08-17 10:05:43 字數 882 閱讀 6225

time limit: 1000 ms

memory limit: 65536 kib

problem description

給定m×n的矩陣,其中的每個元素都是-10到10之間的整數。你的任務是從左上角(1,1)走到右下角(m,n),每一步只能夠向右或者向下,並且不能夠走出矩陣的範圍。你所經過的方格裡面的數字都必須被選取,請找出一條最合適的道路,使得在路上被選取的數字之和是盡可能小的正整數。

input

輸入第1行是兩個整數m和n,(2<=m<=10,2<=n<=10),分別表示矩陣的行和列的數目。接下來m行,每行包括n個整數,就是矩陣中的每一行的n個元素。

output

輸出只有一行,就是乙個整數,表示所選道路上數字之和所能達到的最小正整數。如果不能達到任何正整數,輸出-1。

sample input

2 2

0 21 0

sample output

1

//利用深度優先搜尋解題

#include

using namespace std;

int sum = 0x3f3f3f3f;//sum的初始化

int a[15][15], n, m;

void dfs(int x, int y, int sm), };

int tx, ty;

sm = sm + a[x][y];

for(int i = 0; i < 2; i++)

}else}}

int main()

dfs(1, 1, 0);

if(sum!=0x3f3f3f3f)cout

}

取數字問題

給定m n的矩陣,其中的每個元素都是 10到10之間的整數。你的任務是從左上角 1,1 走到右下角 m,n 每一步只能夠向右或者向下,並且不能夠走出矩陣的範圍。你所經過的方格裡面的數字都必須被選取,請找出一條最合適的道路,使得在路上被選取的數字之和是盡可能小的正整數。輸入第1行是兩個整數m和n,2 ...

取數字問題

取數字問題 time limit 10000ms memory limit 65536k total submit 308 accepted 104 case time limit 1000ms description 給定m n的矩陣,其中的每個元素都是 10到10之間的整數。你的任務是從左上角 ...

取數字問題

think 因為只能往2個方向走,所以只需遍歷每個方向,然後對其進行判斷。特別要注意sum 0的情況 因為題目規定 和正整數,所以當sum 0時flag依舊為false。最後根據flag的狀態來控制輸出。problem description 給定m n的矩陣,其中的每個元素都是 10到10之間的整...