3 釘子與木板 30分

2021-04-18 02:48:51 字數 902 閱讀 8728

3. 釘子與木板 (30分)牆上有n個釘子,編號為1, 2, ..., n。其中釘子i的橫座標為i,縱座標初始為xi。可以進行兩種操作:

0 k v:移動操作。豎直移動釘子k,座標變為(k, v)。

1 s t v:測試操作。若在高度為v處放一塊橫座標範圍是[s,t]的水平木板,它將下落到什麼高度?換句話說,求出釘子s, s+1, s+2, …, t的縱座標中,不超過v的最大值。如果這些釘子的高度全部大於v,則木板將落到地上,高度為0。

注意,在測試操作時,水平木板只是用來測試的「臨時木板」,將在測試後立即被拿走,不會影響到後續測試工作。

第一行包含兩個整數n, m,即釘子的個數和操作的個數(1<=n,m<=105)。以下n行每行乙個不超過109的非負整數,即xi。以下 m 行為各操作 (1 <= k <= n, 1 <= s < t <= n, 1 <= v <= 109 )

按照輸入的順序,對於每個測試操作輸出乙個整數,即該測試水平木板的最後高度。

5 4135

791 2 4 6

0 3 10

1 3 5 7

1 3 5 557

0他人解法:

#include

#include

#include

using namespace std;

int main()

int s,t;

for(int i=0;i>a[i][0];

if(a[i][0]==0) k=3;

else k=4;

for(int j=1;j>a[i][j];

}for(int i=0;ih) ++count;

if(count==t-s+1)

else

else

}}   

return 0;

}

釘子與木板

3.釘子與木板 30分 問題背景 牆上有n個釘子,編號為1,2,n。其中釘子i的橫座標為i,縱座標初始為xi。可以進行兩種操作 0 k v 豎直移動釘子k,座標變為 k,v 1 s t v 若在高度為v處放一塊橫座標範圍是 s,t 的水平木板,它將下落到什麼高度?換句話說,求出釘子s,s 1,s 2...

我的技術30與困惑 3

說實話,目前我這樣的待遇我暫時已經滿足,除了工資,專案有3 的提成 年終可能能拿到一定的公司股份,這對乙個技術人員來說已經算是不錯了,我還期待什麼呢?週六去了我曾經工作過的一家公司,跟老闆談合作的事情。這在上上週已經約好了。前老闆,劉l,是湖北人,很精明的感覺。目前公司骨幹都是比較有能力的業務顧問,...

c 裝配線與工作站 30 分

某汽 公司在有多條裝配線的 內 產汽 個汽 底盤在進 每 條裝配線後,在每個 作站會在汽 底盤上安裝不同的部件,最後完成的汽 從裝配線的末端離開。每 條裝配線上都有 n 個 作站,裝配線i的第 j 個 作站 用s i,j 表示,在兩條裝配線相同位置的 作站執 相同的功能,但由於 作站是在不同的時間建...