牛客練習賽24。C PH試紙(思維)

2021-08-22 16:09:09 字數 995 閱讀 6054

ph試紙,是一種檢測酸鹼度的試紙,試紙紅色為酸性,藍色為鹼性。

htbest有乙個ph試紙,試紙被分成了n段,每一段都可以被染色成紅色或者藍色,whz在試紙的每一段上都染為一種顏色,htbest有m個詢問,對於每個詢問,ta想知道某種顏色第qi次在什麼地方出現。

第一行有兩個正整數n,m。

第二行有n個字母(『r』或』b』),每個第i個字母表示ph試紙第i段的顏色。

接下來m行,第i行有乙個大寫字母 ci(『r』或』b』)和乙個正整數qi ,用空格隔開,表示查詢顏色ci 第qi 次出現的位置。

共m行,第i行乙個整數,表示查詢結果,若顏色ci出現次數少於qi次,則輸出-1,否則輸出顏色qi第ci次出現的位置。
示例1

複製

2 2

rbr 1

b 1

複製

1

2

示例2

複製

2 2

bbr 1

b 2

複製

-1

2

示例3

複製

3 3

brbb 1

b 2r 1

複製

1

32

對於100%的測試資料:

1 ≤ n, m ≤ 1000000

所有輸入資料不超過1000000。

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

思路:因為只有兩種顏色,所以用陣列存一下次數和位置就行了。

#include using namespace std;

#define maxn 1000005

#define ll long long

char str[maxn];

int r[maxn], b[maxn];

int main()

while(m--)

return 0;

}

牛客練習賽24 C PH試紙

ph試紙,是一種檢測酸鹼度的試紙,試紙紅色為酸性,藍色為鹼性。htbest有乙個ph試紙,試紙被分成了n段,每一段都可以被染色成紅色或者藍色,whz在試紙的每一段上都染為一種顏色,htbest有m個詢問,對於每個詢問,ta想知道某種顏色第qi次在什麼地方出現。第一行有兩個正整數n,m。第二行有n個字...

牛客練習賽24 PH試紙

ph試紙 時間限制 c c 2秒,其他語言4秒 空間限制 c c 32768k,其他語言65536k 64bit io format lld ph試紙,是一種檢測酸鹼度的試紙,試紙紅色為酸性,藍色為鹼性。htbest有乙個ph試紙,試紙被分成了n段,每一段都可以被染色成紅色或者藍色,whz在試紙的每...

牛客練習賽24

a石子列陣 快速冪取模 第乙個位置可以有m種選擇,其他每個位置m 1種 include include include includeusing namespace std const int mod 1e9 7 long long quick power long long a,long long...