#include <bits/stdc++.h>
#include "triples.h"
using namespace std;
#define ll long long
ll n,a[200005];
ll count_triples(vector<int> v){
ll n=v.size();
for(int i=1;i<=n;i++){
a[i]=v[i-1];
}
ll ans=0;
for(int i=1;i<=n;i++){
ll x=i-a[i];
if(x<=0){
continue;
}
vector<int> u;
if(2*a[x]!=a[i]){
u.push_back(x+a[x]);
u.push_back(i-a[x]);
}
else{
u.push_back(x+a[x]);
}
for(int j=0;j<u.size();j++){
ll b[4]={i-u[j],i-x,u[j]-x};
ll c[4]={a[i],a[u[j]],a[x]};
sort(b,b+3);
sort(c,c+3);
int sol=1;
for(int l=0;l<3;l++){
if(b[l]!=c[l]){
sol=0;
}
}
ans+=sol;
}
}
return ans;
}
vector<int> construct_range(int m,int k){
vector<int> h;
while(m>=3){
h.push_back(1);
h.push_back(1);
h.push_back(2);
m-=3;
}
return h;
}
# | 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... |