Submission #2121257


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

const int N = 200005;
const long long INF = 1e18 + 123;

int R, C, n;
bool vis[N];
long long a[N];
vector < pair<int, int> > g[N];
vector <int> comp;

void dfs(int u) {
	vis[u] = 1;
	comp.push_back(u);
	for (auto e : g[u]) {
		int v = e.second, w = e.first;
		if (!vis[v]) a[v] = w - a[u], dfs(v);
		else if (vis[v] && a[v] != w - a[u]) { cout << "No\n"; exit(0); }
	}
}

int main() {
	ios_base::sync_with_stdio(false); cin.tie(0);
	cin >> R >> C >> n;
	for (int i = 1; i <= n; ++i) {
		int x, y, w; cin >> x >> y >> w;
		g[x].push_back(make_pair(w, y + R));
		g[y + R].push_back(make_pair(w, x));
	}

	for (int i = 1; i <= R + C; ++i) if (!vis[i]) {
		comp.clear();
		dfs(i);
		long long mr = INF, mc = INF;
		for (int u : comp) {
			if (u <= R) {
				mr = min(mr, a[u]);
			} else {
				mc = min(mc, a[u]);
			}
		}
		if (mr + mc < 0) return cout << "No\n", 0;
	}

	cout << "Yes\n";
}

Submission Info

Submission Time
Task D - Grid and Integers
User cheater2k
Language C++14 (GCC 5.4.1)
Score 800
Code Size 979 Byte
Status AC
Exec Time 53 ms
Memory 15096 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 800 / 800
Status
AC × 5
AC × 69
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 0_04.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt, 1_10.txt, 1_11.txt, 1_12.txt, 1_13.txt, 1_14.txt, 1_15.txt, 1_16.txt, 1_17.txt, 1_18.txt, 1_19.txt, 1_20.txt, 1_21.txt, 1_22.txt, 1_23.txt, 1_24.txt, 1_25.txt, 1_26.txt, 1_27.txt, 1_28.txt, 1_29.txt, 1_30.txt, 1_31.txt, 1_32.txt, 1_33.txt, 1_34.txt, 1_35.txt, 1_36.txt, 1_37.txt, 1_38.txt, 1_39.txt, 1_40.txt, 1_41.txt, 1_42.txt, 1_43.txt, 1_44.txt, 1_45.txt, 1_46.txt, 1_47.txt, 1_48.txt, 1_49.txt, 1_50.txt, 1_51.txt, 1_52.txt, 1_53.txt, 1_54.txt, 1_55.txt, 1_56.txt, 1_57.txt, 1_58.txt, 1_59.txt, 1_60.txt, 1_61.txt, 1_62.txt, 1_63.txt
Case Name Status Exec Time Memory
0_00.txt AC 3 ms 6400 KB
0_01.txt AC 3 ms 6400 KB
0_02.txt AC 3 ms 6400 KB
0_03.txt AC 3 ms 6400 KB
0_04.txt AC 3 ms 6400 KB
1_00.txt AC 4 ms 6528 KB
1_01.txt AC 4 ms 6528 KB
1_02.txt AC 4 ms 6656 KB
1_03.txt AC 3 ms 6400 KB
1_04.txt AC 4 ms 6528 KB
1_05.txt AC 3 ms 6400 KB
1_06.txt AC 43 ms 12928 KB
1_07.txt AC 47 ms 12928 KB
1_08.txt AC 45 ms 10880 KB
1_09.txt AC 42 ms 10880 KB
1_10.txt AC 48 ms 9856 KB
1_11.txt AC 46 ms 9856 KB
1_12.txt AC 53 ms 15096 KB
1_13.txt AC 50 ms 15096 KB
1_14.txt AC 53 ms 15096 KB
1_15.txt AC 52 ms 15096 KB
1_16.txt AC 48 ms 13436 KB
1_17.txt AC 49 ms 14840 KB
1_18.txt AC 49 ms 14328 KB
1_19.txt AC 49 ms 14328 KB
1_20.txt AC 32 ms 9856 KB
1_21.txt AC 16 ms 7808 KB
1_22.txt AC 5 ms 6656 KB
1_23.txt AC 33 ms 9344 KB
1_24.txt AC 39 ms 10496 KB
1_25.txt AC 32 ms 9728 KB
1_26.txt AC 6 ms 6656 KB
1_27.txt AC 9 ms 7040 KB
1_28.txt AC 48 ms 11644 KB
1_29.txt AC 18 ms 8064 KB
1_30.txt AC 45 ms 11264 KB
1_31.txt AC 20 ms 8448 KB
1_32.txt AC 38 ms 10112 KB
1_33.txt AC 46 ms 11264 KB
1_34.txt AC 9 ms 7040 KB
1_35.txt AC 36 ms 9216 KB
1_36.txt AC 10 ms 7168 KB
1_37.txt AC 20 ms 8576 KB
1_38.txt AC 36 ms 9600 KB
1_39.txt AC 13 ms 7680 KB
1_40.txt AC 36 ms 9472 KB
1_41.txt AC 18 ms 8320 KB
1_42.txt AC 38 ms 9728 KB
1_43.txt AC 29 ms 9216 KB
1_44.txt AC 38 ms 10368 KB
1_45.txt AC 13 ms 7552 KB
1_46.txt AC 44 ms 10880 KB
1_47.txt AC 17 ms 8064 KB
1_48.txt AC 15 ms 7808 KB
1_49.txt AC 8 ms 7040 KB
1_50.txt AC 27 ms 9088 KB
1_51.txt AC 44 ms 11260 KB
1_52.txt AC 9 ms 6912 KB
1_53.txt AC 10 ms 7296 KB
1_54.txt AC 17 ms 7808 KB
1_55.txt AC 19 ms 8192 KB
1_56.txt AC 31 ms 9600 KB
1_57.txt AC 44 ms 10880 KB
1_58.txt AC 40 ms 10496 KB
1_59.txt AC 6 ms 6784 KB
1_60.txt AC 3 ms 6400 KB
1_61.txt AC 3 ms 6400 KB
1_62.txt AC 3 ms 6400 KB
1_63.txt AC 3 ms 6400 KB