QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#198849 | #7175. Mixed Messages | ucup-team484 | AC ✓ | 8ms | 23772kb | C++17 | 1.1kb | 2023-10-03 17:48:54 | 2023-10-03 17:48:55 |
Judging History
answer
#include <bits/stdc++.h>
#define sz(x) (int)(x).size()
#define all(x) (x).begin(), (x).end()
#define st first
#define nd second
using namespace std;
typedef long long ll;
const int mod = 1e9 + 7;
const int N = 1e6 + 5;
int main() {
ios_base::sync_with_stdio(false); cin.tie(0);
int n; cin >> n;
string s; cin >> s;
vector<array<int, 26>> nxtR(n), nxtL(n);
for (int i = n - 1; i >= 0; i--) {
for (int j = 0; j < 26; j++)
nxtR[i][j] = i + 1 == n ? n : nxtR[i + 1][j];
s[i] -= 'a';
nxtR[i][s[i]] = i;
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < 26; j++)
nxtL[i][j] = i == 0 ? -1 : nxtL[i - 1][j];
nxtL[i][s[i]] = i;
}
int ans = 10 * n;
string t = "spbsu";
for (int i = 0; i < n; i++) {
if (s[i] != 'b' - 'a')
continue;
int x = i, y = i, cnt = 0;
for (char c: {'s', 'u'}) {
x = nxtR[x][c - 'a'];
if (x == n)
break;
cnt += x - i - (c == 's' ? 1 : 2);
}
for (char c: {'p', 's'}) {
y = nxtL[y][c - 'a'];
if (y == -1)
break;
cnt += i - (c == 'p' ? 1 : 2) - y;
}
if (x < n && y >= 0)
ans = min(ans, cnt);
}
cout << ans << "\n";
}
详细
Test #1:
score: 100
Accepted
time: 0ms
memory: 3616kb
input:
6 spbssu
output:
1
result:
ok answer is '1'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3616kb
input:
15 spongebaseurban
output:
11
result:
ok answer is '11'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3616kb
input:
5 spbsu
output:
0
result:
ok answer is '0'
Test #4:
score: 0
Accepted
time: 0ms
memory: 3772kb
input:
6 sppbsu
output:
1
result:
ok answer is '1'
Test #5:
score: 0
Accepted
time: 0ms
memory: 3552kb
input:
13 spbpbsaaaaaau
output:
8
result:
ok answer is '8'
Test #6:
score: 0
Accepted
time: 0ms
memory: 3636kb
input:
100 supsuuuupusbsubsssbpbuubsppppspsusupbuusbuspupuubuspppusubsupbubusbsbsppbuspuspbbusppuppubuubbusbups
output:
4
result:
ok answer is '4'
Test #7:
score: 0
Accepted
time: 0ms
memory: 3636kb
input:
100 nmpnzouzoosynvhsqljejmgwwgmmuaptmazvneojjgapiizxdengrritcqhppnkjxtqsbsvxsuypgbvatxbzmkpcpnizdsmhdzkt
output:
61
result:
ok answer is '61'
Test #8:
score: 0
Accepted
time: 0ms
memory: 23680kb
input:
100000 supsuuuupupbsubsssbpbuubsppppspsusupbuusbuspupuubuspppusubsuububusbsssppbsspuspbbusppuppubuubbusbupspbsusbsuusussssbusubuupppspppusupbspbsbspubbpsuppusbbubuuubpbbubuubbuspbubpbpsbbusubussbsbubbussspbspbubbupsssuusbbssuspbssupusbpppusssppbpsspbppupsssuupbpupussupbsbuubupppubsspsubuubsbubbppuus...
output:
0
result:
ok answer is '0'
Test #9:
score: 0
Accepted
time: 3ms
memory: 23688kb
input:
100000 nmpnzouzoozynvhsqljejmgwwgmmuaptmazvneojjgapiizxdengrritcqhpcnkjxtqsjtvxsbypgbvatxbzmkpcpnizdsmhdzktphjryltupnkahdlbudksxcukgdkexxdxrtypwqttcpjspnucumswliqciutgdaztpvhbutoscnvscylauhrhchwwstonaghwlmnnrdvdbrxafacihdhstibpqyaeckfqcmeetynurqoyaxakcuoyqwuiztkzxeyqcrjqnixfucpkzljhkquwvijhnzyfxiixn...
output:
5
result:
ok answer is '5'
Test #10:
score: 0
Accepted
time: 6ms
memory: 23680kb
input:
100000 sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss...
output:
0
result:
ok answer is '0'
Test #11:
score: 0
Accepted
time: 4ms
memory: 23680kb
input:
100000 spppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppppp...
output:
99995
result:
ok answer is '99995'
Test #12:
score: 0
Accepted
time: 8ms
memory: 23696kb
input:
100000 spbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb...
output:
199990
result:
ok answer is '199990'
Test #13:
score: 0
Accepted
time: 6ms
memory: 23768kb
input:
100000 spbssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss...
output:
99995
result:
ok answer is '99995'
Test #14:
score: 0
Accepted
time: 0ms
memory: 23668kb
input:
100000 spbsuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu...
output:
0
result:
ok answer is '0'
Test #15:
score: 0
Accepted
time: 3ms
memory: 23644kb
input:
100000 sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss...
output:
79996
result:
ok answer is '79996'
Test #16:
score: 0
Accepted
time: 4ms
memory: 23664kb
input:
100000 spspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspspsps...
output:
6
result:
ok answer is '6'
Test #17:
score: 0
Accepted
time: 4ms
memory: 23688kb
input:
100000 spbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspbsuspb...
output:
0
result:
ok answer is '0'
Test #18:
score: 0
Accepted
time: 3ms
memory: 23616kb
input:
100000 spbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbspbsp...
output:
2
result:
ok answer is '2'
Test #19:
score: 0
Accepted
time: 0ms
memory: 23764kb
input:
100000 aausuabubupppauppuaupapaapaaaspbusssbapuuupapbusbpsauppsuppbapuassububbsssupappsbaauauauausubusppsbbsppsasupbusaauaaasbasuubusaaupupbuapsasaabsspaaasabbbpaappsuspbpappapssbsupupbusuuabbsuupusupsbabbbaauspauuasbspbubauupsuusspusupppbbbbuupbusssussupbbssaauubuusbsubabubssuapuspbabpauuaaaaaaasbs...
output:
0
result:
ok answer is '0'
Test #20:
score: 0
Accepted
time: 3ms
memory: 23772kb
input:
100000 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...
output:
0
result:
ok answer is '0'
Extra Test:
score: 0
Extra Test Passed