5584 2023. 08. 02 12:25:24 TomaSajt Sakktábla (75 pont) cpp17 Elfogadva 75/75 3ms 4068 KiB
#include <bits/stdc++.h>
using namespace std;

int main() {
  int n, m;
  cin >> n >> m;

  if (n > m) swap(n, m);

  auto possible = [&](int k) {
    int k2 = k * k;
    return n >= k2 / 2 && m >= (k2 + 1) / 2;
  };

  /*
  int sol = -1;
  for (int k = 1; k <= 1001; k++) {
    if (!possible(k)) {
      sol = k - 1;
      break;
    }
  }
  cout << sol;
  */

  /*
  int l = 0, r = 1001;
  while (l < r - 1) {
    int m = (l + r) / 2;
    if (possible(m)) {
      l = m;
    }
    else {
      r = m;
    }
  }
  cout << l;
  */

  int sqrt_2n = sqrt(2 * n);
  int sqrt_2np1 = sqrt(2 * n + 1);
  if (m != n && sqrt_2n % 2 == 0 && sqrt_2np1 % 2 == 1) {
    cout << sqrt_2n + 1;
  }
  else {
    cout << sqrt_2n;
  }
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 75/75
1 Elfogadva 0/0 3ms 1916 KiB
2 Elfogadva 0/0 3ms 2068 KiB
3 Elfogadva 5/5 3ms 2320 KiB
4 Elfogadva 5/5 3ms 2528 KiB
5 Elfogadva 5/5 3ms 2772 KiB
6 Elfogadva 5/5 2ms 2832 KiB
7 Elfogadva 5/5 2ms 2968 KiB
8 Elfogadva 5/5 2ms 3180 KiB
9 Elfogadva 5/5 3ms 3372 KiB
10 Elfogadva 5/5 3ms 3608 KiB
11 Elfogadva 7/7 3ms 3724 KiB
12 Elfogadva 7/7 2ms 3836 KiB
13 Elfogadva 7/7 3ms 3976 KiB
14 Elfogadva 7/7 2ms 4056 KiB
15 Elfogadva 7/7 2ms 4068 KiB