152132025-02-16 20:20:22sarminSakktábla (75 pont)cpp17Hibás válasz 70/759ms8436 KiB
// Created by Armin on 2/16/2025.

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using pp = pair<int, int>;
using vi = vector<int>;
using vvi = vector<vector<int>>;
using vpi = vector<pair<int, int>>;
using vl = vector<ll>;
using vll = vector<ll>;
using vs = vector<string>;
using vvs = vector<vector<string>>;
using ss = set<string>;
using msi = map<string, int>;
using mint = map<int, int>;
constexpr ll MOD = 1e9 + 7;

vl v(1e6 + 2);

int main() {
    ios_base::sync_with_stdio(false); cin.tie(0);

    ll no = 3;
    v[0] = 2;
    for (int i = 1; i < 1e6 + 2; i++) {
      v[i] = v[i - 1] + no;
      if (i % 2 == 0) no += 2;
    }

	int n, m; cin >> n >> m;
	if (n < 1 || m < 1) {
		cout << "0\n"; return 0;
	}
	const auto x = lower_bound(v.begin(), v.end(), min(n, m));
	const int hol = x - v.begin(); // (*x > max(n, m)) || (*x == max(n, m) && hol % 2 == 0 && min(n, m) < *x)
	if ((hol % 2 == 1 && *x-1 > min(n, m)) || (hol % 2 == 0 && min(n, m) < *x)) {
		cout << hol + 1 << endl;
	} else {
		cout << hol + 2 << endl;
	}

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base70/75
1Elfogadva0/09ms8436 KiB
2Elfogadva0/09ms8244 KiB
3Elfogadva5/58ms8244 KiB
4Elfogadva5/58ms8248 KiB
5Elfogadva5/58ms8024 KiB
6Elfogadva5/59ms8244 KiB
7Hibás válasz0/59ms8244 KiB
8Elfogadva5/58ms8084 KiB
9Elfogadva5/58ms8244 KiB
10Elfogadva5/58ms8256 KiB
11Elfogadva7/79ms8244 KiB
12Elfogadva7/79ms8260 KiB
13Elfogadva7/78ms8244 KiB
14Elfogadva7/78ms8244 KiB
15Elfogadva7/79ms8040 KiB