Submission #523636

# Submission time Handle Problem Language Result Execution time Memory
523636 2022-02-08T02:20:48 Z maks007 Maxcomp (info1cup18_maxcomp) C++14
15 / 100
331 ms 280 KB
#include <bits/stdc++.h>
 
using namespace std;

int dis(pair <int,int>a, pair <int,int> b) {
	return abs(a.first - b.first) + abs(a.second - b.second);
}

int main(void) {
	int n, m;
	cin >> n >> m;
	if(n == 1) {
		vector <int> a(m);
		for(int i = 0; i < m; i ++) cin >> a[i];
		int ans = INT_MIN;
		for(int i = 0; i < m; i ++) {
			for(int end = i; end < m; end ++) {
				ans = max(ans, *max_element(a.begin() + i, a.begin() + end) - *min_element(a.begin() + i, a.begin() + end) - (end - i));
			//	cout << *max_element(a.begin() + i, a.begin() + end) << " " << *min_element(a.begin() + i, a.begin() + end) << endl;
			}
		}
		cout << ans;
		return false;
	}
	vector <vector <int>> g(n+2, vector <int> (m+2, -1));
	int mx = -1e9;
	int mn = 1e9;
	pair <int,int> mxid, mnid;
	for(int i = 1; i <= n; i ++) {
		for(int j = 1; j <= m; j ++) {
			cin >> g[i][j];
			if(g[i][j] > mx) {
				mx = g[i][j];
				mxid = {i, j};
			}
		}
	}
	for(int i = 1; i <= n; i ++) {
		for(int j = 1; j <= m; j ++) {
			if(g[i][j] < mn) {
				mn = g[i][j];
				mnid = {i, j};
			}else if(g[i][j] == mn and dis({i, j}, mxid) < dis(mnid, mxid)) {
				mn = g[i][j];
				mnid = {i, j};
			}
		}
	}
	cout << mx - mn - (dis(mxid, mnid)+1);
	return false;
}
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Incorrect 1 ms 272 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 321 ms 276 KB Output is correct
2 Correct 331 ms 280 KB Output is correct
3 Correct 321 ms 276 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Incorrect 1 ms 272 KB Output isn't correct
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Output is correct
2 Correct 0 ms 204 KB Output is correct
3 Correct 0 ms 204 KB Output is correct
4 Correct 1 ms 204 KB Output is correct
5 Incorrect 1 ms 272 KB Output isn't correct
6 Halted 0 ms 0 KB -