#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) {
// subtask 3
ll n = H.size();
auto match = [&](ll i, ll j, ll k) {
if (k >= n) return false;
if (i >= j || j >= k) return false;
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 < n; j++) {
set<ll> st = {i + H[i], i + H[j], j + H[i], j + H[j]};
for (auto k : st) {
ans += match(i, j, k);
}
}
}
return ans;
}
std::vector<int> construct_range(int M, int K) {
return {1, 1, 1};
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |