제출 #1307002

#제출 시각아이디문제언어결과실행 시간메모리
1307002MunkhErdene3개의 봉우리 (IOI25_triples)C++17
6 / 100
23 ms3532 KiB
#include "triples.h" #include <bits/stdc++.h> using namespace std; #define _ << ' ' << using ll = long long; long long count_triples(std::vector<int> H) { vector<ll> a({H.begin(), H.end()}); ll n = a.size(); ll ans = 0; for(ll i = 0; i < n; i++) { for(ll j = i + 2; j < n && j <= i + 10; j++){ auto [mx, mn] = make_pair(a[i], a[j]); if(mn > mx) swap(mx, mn); ll d = j - i; if(mx > d) continue; if(mx == d) { ll cand1 = i + mn; ll cand2 = j - mn; if(cand1 == cand2) { if(j - cand1 == a[cand1] && cand1 != j) {ans++;} continue; } if(j - cand1 == a[cand1] && cand1 != j) {ans++;} if(cand2 - i == a[cand2] && cand2 != i) {ans++;} } else { if(a[i] + a[j] != d) continue; ll cand1 = i + mn; ll cand2 = i + mx; if(cand1 == cand2) { if(a[cand1] == d) {ans++;} continue; } if(a[cand1] == d) {ans++;} if(a[cand2] == d) {ans++;} } } } return ans; } std::vector<int> construct_range(int M, int K) { return {1, 1, 1}; }
#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...