제출 #1157664

#제출 시각아이디문제언어결과실행 시간메모리
1157664SmuggingSpun9월 (APIO24_september)C++20
55 / 100
1095 ms2796 KiB
#include<bits/stdc++.h>
#include "september.h"
using namespace std;
int solve(int n, int m, vector<int>f, vector<vector<int>>S){
	if(n <= 1000){
		vector<int>d(n, 0);
		for(int i = 1; i < n; i++){
			d[f[i]]++;
		}
		int ans = 0;
		vector<int>cnt(n, 0);
		for(int i = 0, cnt_same = 0, len = 0; i + 1 < n; i++){
			for(int j = 0; j < S.size(); j++){
				if(++cnt[S[j][i]] == S.size()){
					cnt_same++;
				}	
			}		
			d[f[S[0][i]]]--;	
			if(cnt_same == ++len){
				bool can = true;
				for(int j = 0; j < len; j++){
					if(d[S[0][i - j]] > 0){
						can = false;
						break;
					}
				}
				if(can){
					cnt_same = len = 0;
					fill(cnt.begin(), cnt.end(), 0);
					ans++;
				}
			}
		}
		return ans;
	}	
}

컴파일 시 표준 에러 (stderr) 메시지

september.cpp: In function 'int solve(int, int, std::vector<int>, std::vector<std::vector<int> >)':
september.cpp:36:1: warning: control reaches end of non-void function [-Wreturn-type]
   36 | }
      | ^
#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...