Submission #150866

#TimeUsernameProblemLanguageResultExecution timeMemory
150866pichuliaCipele (COCI18_cipele)C++11
90 / 90
59 ms2496 KiB
#include <stdio.h>
#include <stdlib.h>
#include<algorithm>
using namespace std;
int n, m;
int a[100009];
int b[100009];
bool able(int x)
{
	int skip = m - n;
	int i, j;
	for (i = j = 0; i < n && j < m && skip >= 0;) {
		if (a[i] >= b[j] - x && a[i] <= b[j] + x)
		{
			i++;
			j++;
		}
		else if (a[i] < b[j] - x) return false;
		else {
			j++;
			skip--;
		}
	}
	return i == n;
}
int main()
{
	int i, j, k;
	scanf("%d %d", &n, &m);
	for (i = 0; i < n; i++)scanf("%d", &a[i]);
	for (i = 0; i < m; i++)scanf("%d", &b[i]);
	sort(a, a + n);
	sort(b, b + m);
	if (n > m) {
		for (i = 0; i < n; i++) {
			k = a[i];
			a[i] = b[i];
			b[i] = k;
		}
		k = n;
		n = m;
		m = k;
	}
	int l, r;
	l = 0; r = 1000000009;
	while (l < r) {
		int mid = (l + r) / 2;
		if (able(mid)) {
			r = mid;
		}
		else l = mid + 1;
	}
	printf("%d\n", l);
}

Compilation message (stderr)

cipele.cpp: In function 'int main()':
cipele.cpp:28:9: warning: unused variable 'j' [-Wunused-variable]
  int i, j, k;
         ^
cipele.cpp:29:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d", &n, &m);
  ~~~~~^~~~~~~~~~~~~~~~~
cipele.cpp:30:30: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for (i = 0; i < n; i++)scanf("%d", &a[i]);
                         ~~~~~^~~~~~~~~~~~~
cipele.cpp:31:30: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  for (i = 0; i < m; i++)scanf("%d", &b[i]);
                         ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...