洛谷 P2956題解

2021-10-03 11:57:50 字數 1871 閱讀 8663

先放乙份**:

xy_t =

input()

.split(

" ")

#輸入第一行

下面這樣做只是為了讓萌新好理解:

x =int(xy_t[0]

)#橫向座標

y =int(xy_t[1]

)#縱向座標

xy =

建立農田:

for i in

range

(y):

)先從縱向座標開始

for j in

range

(x):

xy[i]

"n")然後橫向座標

如果x

xx == y

yy == 222

那麼,他會生成乙個這樣的陣列:

[["n","n"],["n","n"]]
為了好看我們可以這樣:

[["n","n"]

["n","n"]]

是不是比上面的更像乙個正方形?

這就是二維陣列,當然n(n > 0)維的都有。

比如乙個三維的:

[[["n","n"],["n","n"]],[["n","n"],["n","n"]]]

據說mc的區塊就是這麼存的……【不懂瞎說的我(劃掉)】

說實話,我自己都看不清……(想看展開?自己展去!)

好了,回到正題:

xy_t =

input()

.split(

" ")

#輸入第一行

下面這樣做只是為了讓萌新好理解:

x =int(xy_t[0]

)#橫向座標

y =int(xy_t[1]

)#縱向座標

t =int(xy_t[2]

)#次數

xy =

c =-1

建立農田:

for i in

range

(y):

)先從縱向座標開始

for j in

range

(x):

xy[i]

"n")然後橫向座標

for s in

range

(t):

x1y1_x2y2 =

input()

.split(

" ")

#下面這樣萌新好理解

# 而且ctrl + c 還闊以偷懶[faceclap]

x1 =

int(x1y1_x2y2[0]

) y1 =

int(x1y1_x2y2[1]

) x2 =

int(x1y1_x2y2[2]

) y2 =

int(x1y1__x2y2[3]

)for i in

range

(y1 -

1, y2)

:for j in

range

(x1 -

1, x2)

:#記住,陣列的下標是從0開始的!

xy[i]

[j]=

"y"#為啥不用if?[別問!]

c =0#記錄輸出

for i in

range

(y):

#重新遍歷防止重複增加

for j in

range

(x):

if xy[i]

[j]==

"y":

c +=

1print

(c)#愉快的輸出,結束!

洛谷 P1101 題解

這道題可以用深搜 回溯 來寫,相信大部分人都是這麼想的,但是有些人可能在一些地方饒了半天,所以這裡就貼一下我的思路,個人覺得自己的很好懂,除了tx和ty那裡,但是tx和ty的那種用法對於輸出路徑的題目一般很實用 這個算是比較簡單的吧,題目裡給出了具體要找的字串,我們要做的就是對它進行8個方向的搜尋,...

洛谷 P1169 題解

請你在乙個黑白矩陣中選出乙個長方形 含正方形 和正方形的子矩陣,使得所有相鄰的點顏色不一樣。矩陣大小 兩條邊都 2000 2000 2 000輸入 3 31 0 1 0 1 0 1 0 0輸出4 6解釋給定矩陣 正方形 長方形 我的控制台是萌萌噠 ffc0cb粉色 乙個小技巧 如果您的控制台是像我的...

題解 洛谷 P3332

題目描述 權值線段樹套線段樹板子題 首先觀察題目,判斷為二維偏序問題 操作1為區間修改,所以一定是外部線段樹維護權值,內部線段樹維護所在區間,否則時間複雜度 qwq 為方便查詢,雜湊時我採用雜湊每個數的相反數的方法將求第k大轉換為求第k小 詢問可以直接想到的做法就是二分答案,查詢1 ans在區間內的...