제출 #1303783

#제출 시각아이디문제언어결과실행 시간메모리
1303783activedeltorre9월 (APIO24_september)C++20
100 / 100
88 ms5736 KiB
#include "september.h"
using namespace std;
#include <vector>
int fre[100005];
int frefre[10];
int cntcopii[100005];
int solve(int N, int M, std::vector<int> F, std::vector<std::vector<int>> S)
{
    int n=N-1;
    for(int i=1; i<=n; i++)
    {
        fre[i]=0;
        cntcopii[i]=0;
    }
    frefre[0]=n;
    for(int i=1; i<=M; i++)
    {
        frefre[i]=0;
    }
    for(int i=1;i<=n;i++)
    {
        cntcopii[F[i]]++;
    }
    int rasp=0,sumcopii=0;
    for(int i=1; i<=n; i++)
    {
        for(int j=0; j<M; j++)
        {
            fre[S[j][i-1]]++;
            frefre[fre[S[j][i-1]]-1]--;
            frefre[fre[S[j][i-1]]]++;
            if(fre[S[j][i-1]]==1)
            {
                sumcopii+=cntcopii[S[j][i-1]];
                if(fre[F[S[j][i-1]]]>=1)
                {
                    sumcopii--;
                }
                else
                {
                    cntcopii[F[S[j][i-1]]]--;
                }
            }
        }
        if(frefre[M]==i && sumcopii==0)
        {
            rasp++;
        }
    }
    return rasp;
}
#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...