#include "triples.h"
#include <bits/stdc++.h>
using namespace std;
#define rep(i, n) for (int i = 0; i < (n); i++)
typedef long long ll;
#define pb push_back
#define st first
#define nd second
#define pii pair<int, int>
#define pll pair<ll, ll>
#define all(a) a.begin(), a.end()
long long count_triples(std::vector<int> T) {
int n = T.size();
ll ans = 0;
rep(i, n) {
int j = i + T[i];
if (j >= n) continue;
int k[3];
k[0] = j - T[j];
k[1] = i + T[j];
k[2] = i - T[j];
rep(c, 3) {
if (k[c] < 0 || k[c] >= n) continue;
int r = k[c];
if (i == j || j == r || i == r) continue;
int t1 = abs(i - j);
int t2 = abs(i - r);
int t3 = abs(j - r);
if (t2 > t3) swap(t2, t3);
if (t1 > t2) swap(t1, t2);
if (t2 > t3) swap(t2, t3);
int a1 = T[i];
int a2 = T[j];
int a3 = T[r];
if (a2 > a3) swap(a2, a3);
if (a1 > a2) swap(a1, a2);
if (a2 > a3) swap(a2, a3);
if (a1 != t1 || a2 != t2 || a3 != t3) continue;
ans++;
}
}
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... |