제출 #1249987

#제출 시각아이디문제언어결과실행 시간메모리
1249987s4dz3개의 봉우리 (IOI25_triples)C++20
0 / 100
13 ms1860 KiB
#include <bits/stdc++.h>

using namespace std;
/*
    Author: s4dz
*/
#define fastio ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL);
using ll = long long;
using ld = long double;
using uint = unsigned int;
using ull = unsigned long long;
using pii = pair<int, int>;
using pli = pair<ll, int>;
using pll = pair<ll, ll>;
const ll maxn = 1000005;
const ll inf = 1e9 + 7;
int n, arr[maxn], q, a, b, c;
int st[4 * maxn], lazy[4 * maxn];
std::vector<int> construct_range(int M, int K)
{
    return{};
}
long long count_triples(std::vector<int> H)
{
    ll ans = 0;
    n = H.size();
    for(int k = 0; k < n; k++)
    {
        int i = k - H[k];
        if(i < 0 || i >= n) continue;
        int j1 = i + H[i];
        int j2 = k - H[i];
        int temp = H[i];
        int hj = max(H[i], H[k] - H[i]);
        if(i < j1 && j1 < k && H[j1] == hj) ans++;
        if(j1 != j2 && j2 > i && j2 < k && H[j2] == hj) ans++;

    }
    return ans;
}

#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...