九度 1384 二維陣列中的查詢

2022-03-29 16:43:14 字數 1057 閱讀 6373

#include#include

using

namespace

std;

#define nmax 1000010

intarr[nmax];/**

* 只需要從左下角或右上角開始查詢,即可。

* 當是從右上角開始查詢時,

* 左上角(row = 0,column = columns - 1),

* 1)若查詢的值key大於當前的值arr[i],則說明key在此行以下,故有row++;

* 2)若查詢的值key小於當前的值arr[i],則說明key在此列的左邊,故有column--;

* 3)若相等,則返回true

* 4)判斷條件:row=0,若滿足,繼續1),若不滿足,則直接返回false */

bool query(int rows, int columns, int

key)

else

if (temp >key)

else

}return

flag;}/*

* * 當是從左下角開始查詢時,

* 左上角(row = rows - 1,column = 0),

* 1)若查詢的值key小於當前的值arr[i],則說明key在此行以下,故有row--;

* 2)若查詢的值key大於當前的值arr[i],則說明key在此列的左邊,故有column++;

* 3)若相等,則返回true

* 4)判斷條件:row >= 0 && column < columns,若滿足,繼續1),若不滿足,則直接返回false */

bool query1(int rows, int columns, int

key)

else

if (temp >key)

else

}return

false;}

intmain()

flag =query1(n, m, t);

if(flag)

else

}return0;

}

題目1384 二維陣列中的查詢

時間限制 1 秒記憶體限制 32 兆特殊判題 否提交 11118解決 2207 題目描述 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。輸入 輸入可能包含多個測試樣例,對於每個測試...

題目1384 二維陣列中的查詢

題目描述 在乙個二維陣列中,每一行都按照從左到右遞增的順序排序,每一列都按照從上到下遞增的順序排序。請完成乙個函式,輸入這樣的乙個二維陣列和乙個整數,判斷陣列中是否含有該整數。輸入 輸入可能包含多個測試樣例,對於每個測試案例,輸入的第一行為兩個整數m和n 1 m,n 1000 代表將要輸入的矩陣的行...

題目1384 二維陣列中的查詢

include intmain if flag 1 else return0 ps 一邊輸入一邊查詢,找到後標記。乙個二重迴圈即可 後記 11 20 今天看了 劍指offer 書上的方法為將矩陣存在乙個一維陣列當中,然後從矩陣的右上角 或者左下角 開始查詢 bool find int matrix,...