Submission #1302207

#TimeUsernameProblemLanguageResultExecution timeMemory
1302207lunarechoSeptember (APIO24_september)C++20
0 / 100
1096 ms360 KiB
#include "september.h"
#include <bits/stdc++.h>
using namespace std;

bool valid(set<int>& s) {
    if(s.empty()) {
        return false;
    }
    int prev = *s.begin() - 1;
    for(auto &it : s) {
        if(prev + 1 != it) {
            return false;
        }
        prev = it;
    }
    return true;
}

int solve(int n, int M, vector<int> F, vector<std::vector<int>> S) {
    int c = n - 1;
    set<int> s;
    int j = n - 2, ans = 0;
    while(c != 0) {
        if(c == S[0][j]) {
            ++ans;
            --c;
            ++j;
            continue;
        } else {
            while(j < n - 1 && !valid(s)) {
                s.insert(S[0][j]);
                ++j;
            }
            if(valid(s)) {
                ++ans;
                c = *s.begin() - 1;
                s.clear();
            }
        }
    }
    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...