Submission #1153287

#TimeUsernameProblemLanguageResultExecution timeMemory
1153287Ak_16September (APIO24_september)C++20
100 / 100
75 ms6640 KiB
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;


int cnt[100005];
int chi[100005];
int fou[100005];
int vis[100005];
int cur;

int solve(int n, int m, vector<int> p, vector<vector<int>> s){
  cur=0;
  for(int i=0; i<n; i++){
    cnt[i]=0; chi[i]=0; fou[i]=0; vis[i]=0;
  }
  for(int i=1; i<n; i++){
    chi[p[i]]++;
  }
  int req=0;
  int hav=0;
  int ans=0;
  
  for(int i=0; i<n-1; i++){
    
    for(int j=0; j<m; j++){
      cnt[s[j][i]]++;
      if(cnt[s[j][i]]==1){
        cur++;
        req += chi[s[j][i]];
        vis[s[j][i]]=1;
        fou[p[s[j][i]]]++;
        if(vis[p[s[j][i]]]==1){hav++;}
        hav += fou[s[j][i]];
      }
    }
    
    if(cur==i+1&&req==hav){ans++;}
  }
  
  return ans;
  
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...