牛客小白月賽6 指紋鎖(set容器的騷操作)

2022-05-08 18:00:09 字數 1336 閱讀 5211

ha實驗有一套非常嚴密的安全保障體系,在ha實驗基地的大門,有乙個指紋鎖。

該指紋鎖的加密演算法會把乙個指紋轉化為乙個不超過1e7的數字,兩個指紋數值之差越小,就說明兩個指紋越相似,當兩個指紋的數值差≤k時,這兩個指紋的持有者會被系統判定為同乙個人。

現在有3種操作,共m個,

操作1:add x,表示為指紋鎖錄入乙個指紋,該指紋對應的數字為x,如果系統內有乙個與x相差≤k的指紋,則系統會忽略這次新增操作

操作2:del x,表示刪除指紋鎖中的指紋x,若指紋鎖中多個與x相差≤k的指紋,則全部刪除,若指紋鎖中沒有指紋x,則可以忽略該操作,

操作3:query x,表示有乙個持有指紋x的人試圖開啟指紋鎖,你需要設計乙個判斷程式,返回該人是否可以開啟指紋鎖(只要x與存入的任何乙個指紋相差≤k即可開啟鎖)。

初始狀態,指紋鎖中沒有任何指紋。

第一行有2個正整數m,k。

接下來m行,每行描述一種操作:add x,del x或query x。

對於每個query操作,輸出一行,包含乙個單詞「yes」或「no」,表示該人是否可以開啟指紋鎖。
示例1

複製

4 3

add 1

add 10

query 5

query 4

複製

no

yes

示例2複製

4 3

add 1

query 4

del 1

query 4

複製

yes

no

示例3複製

6 3

add 10

query 10

add 5

query 5

del 7 //系統將指紋10和指紋5全部刪除

query 8

複製

yes

yesno

對於100%的測試資料:

1 ≤ k,m ≤ 1000000

資料量較大,注意使用更快的輸入輸出方式。

#includeusing namespace std;

typedef long long ll;

const ll mod=1e9+7;

const int maxn=1e6+50;

const ll inf=0x3f3f3f3f3f3f;

int k;

struct node

else if(s[0]=='d')st.erase(x);

else

}return 0;

}

牛客小白月賽6 G 指紋鎖

題目鏈結 ha實驗有一套非常嚴密的安全保障體系,在ha實驗基地的大門,有乙個指紋鎖。該指紋鎖的加密演算法會把乙個指紋轉化為乙個不超過1e7的數字,兩個指紋數值之差越小,就說明兩個指紋越相似,當兩個指紋的數值差 k時,這兩個指紋的持有者會被系統判定為同乙個人。現在有3種操作,共m個,初始狀態,指紋鎖中...

牛客小白月賽6

c 挑花 dfs或bfs 桃花一簇開無主,可愛深紅映淺紅。題百葉桃花 桃花長在桃樹上,樹的每個節點有乙個桃花,調皮的htbest想摘盡可能多的桃花。htbest有乙個魔法棒,摘到樹上任意一條鏈上的所有桃花,由於htbest法力有限,只能使用一次魔法棒,請求出htbest最多可以摘到多少個桃花。第一行...

牛客小白月賽6 桃花

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 桃花一簇開無主,可愛深紅映淺紅。題百葉桃花 桃花長在桃樹上,樹的每個節點有乙個桃花,調皮的htbest想摘盡可能多的桃花。htbest有乙個魔法棒,摘到樹上任意一條...