#include <bits/stdc++.h>
using namespace std;
typedef long long int ll;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
typedef long double ld;
//#define mp make_pair
#define pb push_back
#define eb emplace_back
#define vi vector<ll>
#define vii vector<pair<int,int>>
#define ti tuple<ll,ll,ll>
#define ff first
#define ss second
#define rep(i,a,b) for(ll i=(a); i<(b); i++)
#define all(x) x.begin(),x.end()
#define sz(a) ((int) (a).size())
#define nl '\n'
#define cma <<','<<
ll inf = 1e18;
const ll maxn = 1e5+5;
ll mod = 1e9 + 7;
long long count_triples(std::vector<int> h) {
int n = sz(h);
//check non decreasing
rep(i, 0, n - 1) {
if (h[i] > h[i + 1]) {
return -1;
}
}
auto check = [&](int i, int j, int k) {
if (i >= j || j >= k) {
return 0;
}
vector<int> a = {j - i, k - i, k - j};
vector<int> b = {h[i], h[j], h[k]};
sort(all(a));
if (a == b) return 1;
else return 0;
};
int ans = 0;
rep(k, 0, n) {
int i = k - h[k];
if (i < 0 || i >= k) continue;
ans += check(i, k - h[i], k);
if (h[i] + i != k - h[i]) {
ans += check(i, h[i] + i, 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... |