# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
1251511 | chr34 | Triple Peaks (IOI25_triples) | C++20 | 0 ms | 0 KiB |
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define endl "\n"
#define dbg(x) cout << #x << " = " << (x) << endl;
const int INF = 1e18;
const int MAXN = 1e6 + 10;
const int MOD = 1e9 + 7;
bool check(vector<int> first, vector<int> second){
sort(first.begin(), first.end());
sort(second.begin(), second.end());
for(int i = 0; i < 3; ++i){
if(first[i] != second[i]) return false;
}
return true;
}
int count_triples(vector<int> h){
int n = h.size();
int 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){
vector<int> first = {j - i, k - j, k - i};
vector<int> second = {h[i], h[j], h[k]};
if(check(first, second)) ans++;
}
}
}
return ans;
}
int32_t main(){
ios::sync_with_stdio(false);
cin.tie(nullptr);
//freopen("input.in", "r", stdin);
//freopen("input.out", "w", stdout);
//cout<<count_triples({4, 1, 4, 3, 2, 6, 1});
return 0;
}