#include "triples.h"
#include <bits/stdc++.h>
#define el '\n'
typedef long long llo;
#define fn(i,a,b) for (int i = a; i <= b; i++)
#define rn(i,a,b) for (int i = a; i >= b; i--)
using namespace std;
long long count_triples(std::vector<int> H) {
int n = H.size();
llo ans = 0;
fn(i,0,n-1) fn(j,i+1,n-1){
int d1 = j - i;
if(H[i] > d1){
int k = i + H[i];
if(k < n){
int d3 = k - j;
if((H[j] == d1 && H[k] == d3) || (H[j] == d3 && H[k] == d1) )
ans++;
}
}
if(H[j] > d1){
int k = i + H[j];
if(k < n){
int d3 = k - j;
if((H[i] == d1 && H[k] == d3) || (H[i] == d3 && H[k] == d1))
ans++;
}
}
if(H[i] == d1){
int d3 = H[j];
int d2 = d1 + d3;
int k = i + d2;
if(k < n && H[k] == d2) ans++;
}
if(H[j] == d1){
int d3 = H[i];
int d2 = d1 + d3;
int k = i + d2;
if(k < n && H[k] == d2) ans++;
}
}
return ans;
}
std::vector<int> construct_range(int M, int K) {
return{};
}
# | 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... |