bzoj4717 改裝 模擬 二分

2022-05-18 07:25:45 字數 1961 閱讀 4947

【題目背景】

小q最近喜歡上了一款遊戲,名為《艦隊connection》,在遊戲中,小q指揮強大的艦隊南征北戰,從而成為了一名dalao。在遊戲中,不僅船隻能力很重要,搭配合適的裝備更是如虎添翼。小q潛心研究配裝三十年,終於——把裝備湊齊了。

【題意描述】

小q有n艘船,m件裝備。為了簡單起見,我們假定每艘船都只能攜帶一件裝備,且可以攜帶任何一件裝備。每艘船和每件裝備都有自己的能力值。船攜帶裝備時,能力值為兩者相乘。另外,小q還有可能對船或裝備進行改修(強化)。改修成功會讓能力提公升,失敗則會讓能力降低。由於最佳配置已經用了無數次了毫無挑戰性,因此,小q並不打算直接使用最佳配置,而是使用相對弱一些的第k佳配置。具體來說,每次選擇船隻時,由於關卡限制,小q需要在編號為l到r的船隻中選擇一艘,並在編號為a和b之間的裝備選擇一架,組成出擊用的船隻。於是,小q總共有(r-l+1)*(b-a+1)種選擇,小q希望知道,所有這些選擇中,第k大的能力值是多少。例如:

船隻:5 3 7

裝備:4 2 1 8 16

對於l=1,r=3,a=1,b=5,k=10的詢問,將所有可能的能力值排序,分別為7*16=102,5*16=80,7*8=56,3*16=48,5*8=40,7*4=28,3*8=24,5*4=20,7*2=14,3*4=12,5*2=10,7*1=7,3*2=6,5*1=5,3*1=3,其中第10大的是12。對於l=2,r=3,a=2,b=4,k=5的詢問,將所有可能的能力值排序,分別為7*8=56,3*8=24,7*2=16,7*1=7,3*2=6,3*1=3,其中第5大的是6。假定小q改修了第二艘船使其能力值成功增加至4,並改修了第5件裝備但由於失敗使得它的能力值減小為9。現在,對於l=1,r=2,a=4,b=5,k=3的詢問,所有可能的能力值分別為5*9=45,5*8=40,4*9=36,

第一行兩個數n,m,空格分隔,表示小q的船的數量和裝備的數量。

第二行n個數,空格分隔,表示小q的船的能力值(按編號)。

第三行m個數,空格分隔,表示小q的裝備的能力值(按編號)。

第四行乙個數q,表示小q的運算元量。

接下來q行,每行描述乙個操作,操作要麼為乙個改修事件,要麼為乙個詢問。

對於改修事件,該行4個數0,type,pos,val,type為0或1,0表示把pos號船改修成val的能力值

1表示把pos號裝備改修成val的能力值。

對於詢問操作,該行6個數1,l,r,a,b,k,空格分隔,表示乙個詢問。

n<=250,m<=100000,q<=100000,其中詢問操作不會超過200。

對於100%的資料,1<=l<=r<=n,1<=a<=b<=m,1<=k<=(r-l+1)*(b-a+1)

任何時候船能力值為不超過2000的正整數,裝備能力值為不超過1000000的正整數。

暴力吧,100s隨便搞

二分

1 #include2 #include3 #include4 #include5 #include6

7#define n 100007

8#define inf 1000000007

9#define ll long long

10using

namespace

std;

11 inline int

read()

1215

while(ch>='

0'&&ch<='9')

16return x*f;17}

1819

intn,m,q;

20int a[300],b[n],cnt[2010

];21

22 inline int jud(int x,int l,int

r)23

30return

res;31}

32int

main()

3349

else

5062 printf("

%d\n

",r+1

);63}64

}65 }

二分模擬賽流程

確認資料是否完整 nan,型別異常 將string型別,換成category 使用onehot或者labelencoder 資料標準化 mirmaxscaler或者standardscaler 儲存資料 因為部分預處理過程會比較耗時,所以需要保留中間結果 一般來說,越新的模型效果越好 lightgb...

bzoj 2083 (二分查詢)

time limit 10 sec memory limit 259 mb submit 352 solved 157 submit status discuss 霸中智力測試機構的一項工作就是按照一定的規則刪除乙個序列的數字,得到乙個確定的數列。lyx很渴望成為霸中智力測試機構的主管,但是他在這個...

分塊 二分 BZOJ 3343

time limit 10 sec memory limit 256 mb submit 1312 solved 585 submit status discuss 教主最近學會了一種神奇的魔法,能夠使人長高。於是他準備演示給xmyz資訊組每個英雄看。於是n個英雄們又一次聚集在了一起,這次他們排成了...