답안 #128669

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
128669 2019-07-11T08:16:22 Z antimirage 벽 (IOI14_wall) C++14
0 / 100
992 ms 44688 KB
#include "wall.h"
#include <bits/stdc++.h>

#define fr first
#define sc second
#define mk make_pair
#define pb push_back
#define all(s) s.begin(), s.end()

using namespace std;

const int N = 1e5 + 5;

vector <int> add[N], del[N];

multiset <int> st;

void buildWall(int n, int k, int op[], int l[], int r[], int h[], int a[]) {
	
	bool fl = 0;
	
	for (int i = 0; i < k; i++) {
		if (op[i] == 1) {
			add[l[i]].pb(h[i]);
			del[r[i] + 1].pb(h[i]);
			assert(fl == 0);
		}
		else {
			if (fl == 0) {
				fl = 1;
				for (int i = 0; i < n; i++) {
					for (auto it : add[i])
						st.insert(it);
					for (auto it : del[i])
						st.erase(st.lower_bound(it));
					
					if (!st.empty())
						a[i] = max(a[i], *(--st.end()) );
				}
				st.clear();
			}
			add[l[i]].pb(h[i]);
			del[r[i] + 1].pb(h[i]);
		}
	}
	if (fl == 0) {
		for (int i = 0; i < n; i++) {
			for (auto it : add[i])
				st.insert(it);
			for (auto it : del[i])
				st.erase(st.lower_bound(it));
			
			if (!st.empty())
				a[i] = max(a[i], *(--st.end()) );
		}
	}
	else {
		for (int i = 0; i < n; i++) {
			for (auto it : add[i])
				st.insert(it);
			for (auto it : del[i])
				st.erase(st.lower_bound(it));
			
			if (!st.empty())
				a[i] = min(a[i], *(st.begin()) );
		}
	}
}
/**
10 3
1 3 4 91220
1 5 9 48623
2 3 5 39412
**/
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 4984 KB Output is correct
2 Runtime error 15 ms 10104 KB Execution killed with signal 11 (could be triggered by violating memory limits)
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 4984 KB Output is correct
2 Incorrect 992 ms 44688 KB Output isn't correct
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 4988 KB Output is correct
2 Runtime error 15 ms 10180 KB Execution killed with signal 11 (could be triggered by violating memory limits)
3 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 6 ms 4984 KB Output is correct
2 Runtime error 15 ms 10204 KB Execution killed with signal 11 (could be triggered by violating memory limits)
3 Halted 0 ms 0 KB -