제출 #1257403

#제출 시각아이디문제언어결과실행 시간메모리
1257403math_rabbit_1028Triple Peaks (IOI25_triples)C++20
0 / 100
13 ms2372 KiB
#include "triples.h" #include <bits/stdc++.h> using namespace std; long long count_triples(vector<int> H) { int N = H.size(); long long ans = 0; int i, j, k; for (j = 0; j < N; j++) { // case 1 i = j - H[j]; if (i >= 0) { k = i + H[i]; if (k < N && H[k] == k-j) ans += 1; k = j + H[i]; if (k < N && H[k] == k-i) ans += 1; } // case 2 k = j + H[j]; if (k < N) { i = k - H[k]; if (i >= 0 && H[i] == j-i) ans += 1; i = j - H[k]; if (i >= 0 && H[i] == k-i) ans += 1; } } // case 3-1 for (i = 0; i < N; i++) { j = i + H[i]; if (j >= N) continue; k = i + H[j]; if (k >= N) continue; if (H[k] == k-j) ans += 1; } return ans; } vector<int> construct_range(int M, int K) { int N = M; vector<int> result(N); for (int i = 0; i < N; i++) { if (i % 2 == 0) result[i] = i+1; else result[i] = N-i; } return result; }
#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...