133832025-01-07 18:22:39PajerLeviRácsháló gráfcpp17Accepted 50/508ms572 KiB
#include<bits/stdc++.h>

using namespace std;

int main(){
	int n, m, k;
	cin >> n >> m >> k;
	vector<vector<int>> d(n*m, vector<int>(n*m));
	for(int i=0;i<n*m;i++){
		for(int j=0;j<n*m;j++){
			d[i][j]=abs(i%m-j%m)+abs(i/m-j/m);
		}
	}
	for(int h=0;h<k;h++){
		int u, v;
		cin >> u >> v;
		u--, v--;
		int newMax=INT_MIN;
		for(int i=0;i<n*m;i++){
			for(int j=0;j<n*m;j++){
				d[i][j]=min(d[i][j], min(d[j][u]+d[i][v], d[i][u]+d[v][j])+1);
				newMax=max(newMax, d[i][j]);
			}
		}
		cout << newMax << '\n';
	}
	return 0;
}
SubtaskSumTestVerdictTimeMemory
base50/50
1Accepted0/01ms316 KiB
2Accepted0/08ms564 KiB
3Accepted2/21ms500 KiB
4Accepted2/21ms316 KiB
5Accepted2/21ms316 KiB
6Accepted2/21ms316 KiB
7Accepted2/21ms316 KiB
8Accepted2/21ms500 KiB
9Accepted2/21ms316 KiB
10Accepted2/21ms316 KiB
11Accepted2/21ms316 KiB
12Accepted2/23ms572 KiB
13Accepted3/34ms500 KiB
14Accepted3/31ms500 KiB
15Accepted3/34ms316 KiB
16Accepted3/31ms388 KiB
17Accepted3/34ms316 KiB
18Accepted3/32ms316 KiB
19Accepted3/31ms316 KiB
20Accepted3/31ms508 KiB
21Accepted3/32ms316 KiB
22Accepted3/38ms564 KiB