163682025-04-29 08:46:37AblablablaXorcpp17Hibás válasz 0/100165ms1896 KiB
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

int main()
{
    ll t;
    cin >> t;

    while(t--){
        ll l, r;
        cin >> l >> r;

        string lent, fent;
        while(r > 0){
            lent += (char)(l % 2 + '0');
            fent += (char)(r % 2 + '0');

            l /= 2;
            r /= 2;
        }

        reverse(lent.begin(), lent.end());
        reverse(fent.begin(), fent.end());

        ll x = 0, y = 0, z = 0;
        ll ind = 0;

        for(ind = 0; ind < lent.size(); ind++){
            if(fent[ind] == '1' && lent[ind] == '1'){
                x *= 2;
                y *= 2;
                z *= 2;
                x++;
                y++;
                z++;
            } else{
                break;
            }
        }

        x *= 2;
        y *= 2;
        z *= 2;
        z++;
        ind++;

        x *= 2;
        y *= 2;
        z *= 2;
        y++;
        ind++;

        if(ind < lent.size()){
            x *= 2;
            y *= 2;
            z *= 2;
            x++;
            ind++;
        }

        while(ind < lent.size()){
            x *= 2;
            y *= 2;
            z *= 2;
            x++;
            ind++;
        }

        cout << x << " " << y << " " << z << "\n";
    }
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/100
1Elfogadva0/01ms316 KiB
2Hibás válasz0/016ms316 KiB
3Hibás válasz0/51ms316 KiB
4Hibás válasz0/51ms316 KiB
5Hibás válasz0/51ms316 KiB
6Hibás válasz0/51ms316 KiB
7Hibás válasz0/56ms404 KiB
8Hibás válasz0/58ms316 KiB
9Hibás válasz0/513ms432 KiB
10Hibás válasz0/516ms480 KiB
11Hibás válasz0/532ms616 KiB
12Hibás válasz0/532ms564 KiB
13Hibás válasz0/565ms1008 KiB
14Hibás válasz0/696ms1256 KiB
15Időlimit túllépés0/6128ms1588 KiB
16Időlimit túllépés0/6165ms1844 KiB
17Időlimit túllépés0/6165ms1744 KiB
18Hibás válasz0/717ms564 KiB
19Időlimit túllépés0/7157ms1844 KiB
20Időlimit túllépés0/7158ms1896 KiB