Submission #1250247

#TimeUsernameProblemLanguageResultExecution timeMemory
1250247omar1312Triple Peaks (IOI25_triples)C++20
8 / 100
2096 ms1980 KiB
// #include "souvenirs.h"
#include "triples.h"
#include <utility>
#include <vector>
#include <bits/stdc++.h>

using namespace std;

#define ll long long

const int mod = 1000000007;

int p[200005];

ll dist(ll i, ll j){
    return max(i, j) - min(i, j);
}

long long count_triples(std::vector<int> h) {
    const int n = h.size();
    ll ans = 0;

    for(int i = 0; i < n; i++){
        for(int j = i + 1; j < n; j++){
            for(int k = j + 1; k < n; k++){
                array<ll, 3> lhs = {h[i], h[j], h[k]};
                array<ll, 3> rhs = {dist(i, j), dist(i, k), dist(j, k)};

                sort(lhs.begin(), lhs.end());
                sort(rhs.begin(), rhs.end());

                if(lhs == rhs){
                    ans++;
                }
            }
        }
    }

    return ans;
}

std::vector<int> construct_range(int M, int K) {
  return {1, 1, 1};
}



// int main(){
// cin.tie(0)->sync_with_stdio(0);
    
// }
#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...