Submission #1261876

#TimeUsernameProblemLanguageResultExecution timeMemory
1261876Canuc80kTriple Peaks (IOI25_triples)C++20
0 / 100
13 ms1860 KiB
#include "bits/stdc++.h"
using namespace std;
using ll = long long;
using ld = long double;
using ull = unsigned long long;

map<ll, ll> pp[11];
long long count_triples(std::vector<int> H) {
    ll res = 0;

    // #TH: a[k] max
    for (int k = 2; k < H.size(); k ++) {
        bool ok1 = 1, ok2 = 1;

        int i = k - H[k];
        if (i < 0) continue;
        if (H[i] >= H[k]) continue;

        int j = k - H[i];
        if (j < 0) ok1 = 0;
        if (H[j] <= H[i]) ok1 = 0;
        if (H[j] >= H[k]) ok1 = 0;
        if (H[j] != j - i) ok1 = 0;
        j = i + H[i];
        // cout << "Debug: " << i << ' ' << j << ' ' << k << endl;
        if (j < 0) ok2 = 0;
        if (H[j] <= H[i]) ok2 = 0;
        if (H[j] >= H[k]) ok2 = 0;
        if (H[j] != k - j) ok2 = 0;
        if (ok1 || ok2) res ++;
    }
    return res;
}

std::vector<int> construct_range(int M, int K) {
    // vector<int> res; res.push_back(1);
    // for (int i = 1; i < M; i ++) res.push_back(i);
    // return res;
}

Compilation message (stderr)

triples.cpp: In function 'std::vector<int> construct_range(int, int)':
triples.cpp:39:1: warning: no return statement in function returning non-void [-Wreturn-type]
   39 | }
      | ^
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...