Submission #1250144

#TimeUsernameProblemLanguageResultExecution timeMemory
1250144liamislazyTriple Peaks (IOI25_triples)C++20
0 / 100
2095 ms1860 KiB
#include "triples.h" #include <bits/stdc++.h> #define el '\n' typedef long long llo; #define fn(i,a,b) for (int i = a; i <= b; i++) #define rn(i,a,b) for (int i = a; i >= b; i--) using namespace std; long long count_triples(std::vector<int> H) { int n = H.size(); llo ans = 0; fn(i,0,n-1) fn(j,i+1,n-1){ int d1 = j - i; if(H[i] > d1){ int k = i + H[i]; if(k < n){ int d3 = k - j; if((H[j] == d1 && H[k] == d3) || (H[j] == d3 && H[k] == d1) ) ans++; } } if(H[j] > d1){ int k = i + H[j]; if(k < n){ int d3 = k - j; if((H[i] == d1 && H[k] == d3) || (H[i] == d3 && H[k] == d1)) ans++; } } if(H[i] == d1){ int d3 = H[j]; int d2 = d1 + d3; int k = i + d2; if(k < n && H[k] == d2) ans++; } if(H[j] == d1){ int d3 = H[i]; int d2 = d1 + d3; int k = i + d2; if(k < n && H[k] == d2) ans++; } } return ans; } std::vector<int> construct_range(int M, int K) { return{}; }
#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...