Submission #1195525


Source Code Expand

#include <iostream>
#include <string>
#include <vector>
#include <queue>
#include <algorithm>
#include <tuple>

using namespace std;
using pii = pair<int, int>;
using tiii = tuple<int, int, int>;

int main(){
	ios_base::sync_with_stdio(false);
	int n, m;
	cin >> n >> m;
	vector<vector<int>> conn(n);
	for(int i = 0; i < m; ++i){
		int a, b;
		cin >> a >> b;
		--a; --b;
		conn[a].push_back(b);
		conn[b].push_back(a);
	}
	int q;
	cin >> q;
	vector<vector<pii>> table(n, vector<pii>(11, pii(0, -1)));
	priority_queue<tiii> pq;
	for(int i = 0; i < q; ++i){
		int r, d, c;
		cin >> r >> d >> c;
		--r;
		table[r][d] = pii(c, i);
		pq.emplace(i, r, d);
	}
	while(!pq.empty()){
		const int i = get<0>(pq.top());
		const int u = get<1>(pq.top());
		const int d = get<2>(pq.top());
		pq.pop();
		if(d == 0 || table[u][d].second != i){ continue; }
		for(const auto v : conn[u]){
			if(i > table[v][d - 1].second){
				table[v][d - 1] = pii(table[u][d].first, i);
				pq.emplace(i, v, d - 1);
			}
		}
	}
	for(int v = 0; v < n; ++v){
		int max_c = 0, max_i = -1;
		for(const auto p : table[v]){
			if(p.second > max_i){
				max_c = p.first;
				max_i = p.second;
			}
		}
		cout << max_c << '\n';
	}
	return 0;
}

Submission Info

Submission Time
Task B - Splatter Painting
User logicmachine
Language C++14 (GCC 5.4.1)
Score 700
Code Size 1266 Byte
Status AC
Exec Time 379 ms
Memory 25580 KB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 200 / 200 500 / 500
Status
AC × 2
AC × 19
AC × 35
Set Name Test Cases
Sample 00_example_01.txt, 00_example_02.txt
Subtask1 00_example_01.txt, 00_example_02.txt, 10_01.txt, 10_02.txt, 10_03.txt, 10_04.txt, 10_05.txt, 10_06.txt, 10_07.txt, 10_08.txt, 10_09.txt, 10_10.txt, 10_11.txt, 10_12.txt, 10_13.txt, 10_14.txt, 10_15.txt, 10_16.txt, 10_17.txt
All 00_example_01.txt, 00_example_02.txt, 10_01.txt, 10_02.txt, 10_03.txt, 10_04.txt, 10_05.txt, 10_06.txt, 10_07.txt, 10_08.txt, 10_09.txt, 10_10.txt, 10_11.txt, 10_12.txt, 10_13.txt, 10_14.txt, 10_15.txt, 10_16.txt, 10_17.txt, 20_01.txt, 20_02.txt, 20_03.txt, 20_04.txt, 20_05.txt, 20_06.txt, 20_07.txt, 20_08.txt, 20_09.txt, 20_10.txt, 20_11.txt, 20_12.txt, 20_13.txt, 20_14.txt, 20_15.txt, 20_16.txt
Case Name Status Exec Time Memory
00_example_01.txt AC 1 ms 256 KB
00_example_02.txt AC 1 ms 256 KB
10_01.txt AC 3 ms 384 KB
10_02.txt AC 1 ms 256 KB
10_03.txt AC 1 ms 256 KB
10_04.txt AC 1 ms 256 KB
10_05.txt AC 1 ms 256 KB
10_06.txt AC 1 ms 256 KB
10_07.txt AC 1 ms 512 KB
10_08.txt AC 4 ms 640 KB
10_09.txt AC 4 ms 640 KB
10_10.txt AC 4 ms 640 KB
10_11.txt AC 4 ms 640 KB
10_12.txt AC 4 ms 640 KB
10_13.txt AC 3 ms 640 KB
10_14.txt AC 2 ms 640 KB
10_15.txt AC 2 ms 640 KB
10_16.txt AC 5 ms 768 KB
10_17.txt AC 5 ms 768 KB
20_01.txt AC 264 ms 18808 KB
20_02.txt AC 282 ms 18808 KB
20_03.txt AC 298 ms 18808 KB
20_04.txt AC 24 ms 2176 KB
20_05.txt AC 4 ms 512 KB
20_06.txt AC 22 ms 13952 KB
20_07.txt AC 4 ms 512 KB
20_08.txt AC 27 ms 2168 KB
20_09.txt AC 4 ms 604 KB
20_10.txt AC 28 ms 2040 KB
20_11.txt AC 36 ms 2168 KB
20_12.txt AC 98 ms 16448 KB
20_13.txt AC 223 ms 18168 KB
20_14.txt AC 209 ms 17656 KB
20_15.txt AC 379 ms 25580 KB
20_16.txt AC 370 ms 25068 KB