#include<bits/stdc++.h>
#include "september.h"
using namespace std;
int solve(int n, int m, vector<int>f, vector<vector<int>>S){
vector<int>d(n, 0);
for(int i = 1; i < n; i++){
d[f[i]]++;
}
int ans = 0;
vector<int>cnt(n, 0);
vector<bool>app(n, false);
for(int i = 0, cnt_same = 0, cnt_d_0 = 0, len = 0; i + 1 < n; i++){
for(int j = 0; j < S.size(); j++){
if(++cnt[S[j][i]] == S.size()){
cnt_same++;
}
}
app[S[0][i]] = true;
if(--d[f[S[0][i]]] == 0 && app[f[S[0][i]]]){
cnt_d_0++;
}
if(d[S[0][i]] == 0){
cnt_d_0++;
}
if(cnt_same == ++len && cnt_d_0 == len){
for(int j = 0; j < len; j++){
cnt[S[0][i - j]] = 0;
}
cnt_same = len = cnt_d_0 = 0;
ans++;
}
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |