제출 #1186093

#제출 시각아이디문제언어결과실행 시간메모리
1186093harvsftw벽 (IOI14_wall)C++20
8 / 100
3095 ms12468 KiB
#include <bits/stdc++.h> #include "wall.h" using namespace std; #define F(i, n) for(int i = 0; i < (n); i++) using pii = pair<int, int>; pii merge(pii a, pii b) { if(a.second < b.first) { return {b.first, b.first}; } else if(b.second < a.first) { return {b.second, b.second}; } else { return {max(a.first, b.first), min(a.second, b.second)}; } } void buildWall(int n, int k, int op[], int left[], int right[], int height[], int finalHeight[]){ vector<pair<int, int>> intervals; F(i, k) { if(op[i] == 1) { intervals.emplace_back(height[i], INT_MAX); } else if(op[i] == 2) { intervals.emplace_back(0, height[i]); } else { assert(false); } } F(i, n) { pii ret = {0, 0}; F(j, k) { if(left[j] <= i && i <= right[j]) { ret = merge(ret, intervals[j]); } } finalHeight[i] = ret.first; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...