제출 #1253662

#제출 시각아이디문제언어결과실행 시간메모리
1253662TheScrasse3개의 봉우리 (IOI25_triples)C++20
8 / 100
170 ms1984 KiB
#include <bits/stdc++.h>
using namespace std;

#define nl "\n"
#define nf endl
#define ll long long
#define pb push_back
#define _ << ' ' <<

#define INF (ll)1e18
#define mod 998244353
#define maxn 110

#include "triples.h"

long long count_triples(std::vector<int> H) {
    ll limit = 100;
    ll n = H.size();
    if (n > 100) limit = 10;

    auto match = [&](ll i, ll j, ll k) {
        array<ll, 3> a = {j - i, k - j, k - i};
        array<ll, 3> b = {H[i], H[j], H[k]};
        sort(a.begin(), a.end());
        sort(b.begin(), b.end());
        return a == b;
    };

    ll ans = 0;
    for (ll i = 0; i < n; i++) {
        for (ll j = i + 1; j < i + limit; j++) {
            for (ll k = j; k < i + limit; k++) {
                ans += match(i, j, k);
            }
        }
    }

    return ans;
}

std::vector<int> construct_range(int M, int K) {
    return {1, 1, 1};
}
#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...