Submission #52319521


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

#define rep(i, a, b) for(int i = a; i < (b); ++i)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
typedef long long ll;
typedef pair<ll, ll> pii;
typedef vector<int> vi;
#define pb push_back

const inline ll lsb(ll x) {
    return x & -x;
}

int main() {
	cin.tie(0)->sync_with_stdio(0);

    ll l, r; cin >> l >> r;

    vector<pair<ll, ll>> ans1, ans2;
    while (l > 0 && l + lsb(l) <= r) {
        ans1.pb({l, l + lsb(l)});
        l += lsb(l);
    }
    while (r > 0 && r - lsb(r) >= l) {
        ans2.pb({r - lsb(r), r});
        r -= lsb(r);
    }
    reverse(all(ans2));
    
    cout << sz(ans1) + sz(ans2) << '\n';
    for (auto [a, b] : ans1) {
        cout << a << ' ' << b << '\n';
    }
    for (auto [a, b] : ans2) {
        cout << a << ' ' << b << '\n';
    }
}

Submission Info

Submission Time
Task D - Divide Interval
User richzli
Language C++ 20 (gcc 12.2)
Score 450
Code Size 877 Byte
Status AC
Exec Time 1 ms
Memory 3608 KiB

Compile Error

Main.cpp:12:1: warning: type qualifiers ignored on function return type [-Wignored-qualifiers]
   12 | const inline ll lsb(ll x) {
      | ^~~~~

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 450 / 450
Status
AC × 3
AC × 32
Set Name Test Cases
Sample 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt
All 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 1 ms 3420 KiB
00_sample_02.txt AC 1 ms 3520 KiB
00_sample_03.txt AC 1 ms 3520 KiB
01_test_01.txt AC 1 ms 3412 KiB
01_test_02.txt AC 1 ms 3420 KiB
01_test_03.txt AC 1 ms 3480 KiB
01_test_04.txt AC 1 ms 3444 KiB
01_test_05.txt AC 1 ms 3528 KiB
01_test_06.txt AC 1 ms 3480 KiB
01_test_07.txt AC 1 ms 3472 KiB
01_test_08.txt AC 1 ms 3604 KiB
01_test_09.txt AC 1 ms 3412 KiB
01_test_10.txt AC 1 ms 3420 KiB
01_test_11.txt AC 1 ms 3328 KiB
01_test_12.txt AC 1 ms 3472 KiB
01_test_13.txt AC 1 ms 3424 KiB
01_test_14.txt AC 1 ms 3608 KiB
01_test_15.txt AC 1 ms 3480 KiB
01_test_16.txt AC 1 ms 3392 KiB
01_test_17.txt AC 1 ms 3396 KiB
01_test_18.txt AC 1 ms 3400 KiB
01_test_19.txt AC 1 ms 3604 KiB
01_test_20.txt AC 1 ms 3480 KiB
01_test_21.txt AC 1 ms 3436 KiB
01_test_22.txt AC 1 ms 3396 KiB
01_test_23.txt AC 1 ms 3480 KiB
01_test_24.txt AC 1 ms 3484 KiB
01_test_25.txt AC 1 ms 3452 KiB
01_test_26.txt AC 1 ms 3408 KiB
01_test_27.txt AC 1 ms 3412 KiB
01_test_28.txt AC 1 ms 3432 KiB
01_test_29.txt AC 1 ms 3528 KiB