2585 | 2023-01-17 20:36:48 | kristof | IntervallumXOR kihívás | python3 | Időlimit túllépés 35/100 | 578ms | 12688 KiB |
from sys import stdin, stdout
import sys
import os
pow2 = [1 << i for i in range(30)][::-1]
mm = pow2[0]
N = int(input())
x = [int(stdin.readline()) for i in range(N)]
for i in range(N):
xx = x[i]
if xx % 4 == 0:
xor = xx
if xx % 4 == 1:
xor = 1
if xx % 4 == 2:
xor = xx + 1
if xx % 4 == 3:
xor = 0
drop = xor
m = mm
for index in range(30):
if m ^ drop <= xx:
drop ^= m
m >>= 1
#print(xor, xor ^ drop)
sys.stdout.write(str(xor) + " " + str(xor ^ drop) + "\n")
Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Elfogadva | 17ms | 11484 KiB | ||||
subtask2 | 15/15 | ||||||
2 | Elfogadva | 27ms | 11968 KiB | ||||
subtask3 | 0/15 | ||||||
3 | Időlimit túllépés | 556ms | 12308 KiB | ||||
subtask4 | 20/20 | ||||||
4 | Elfogadva | 17ms | 12040 KiB | ||||
subtask5 | 0/50 | ||||||
5 | Időlimit túllépés | 563ms | 12576 KiB | ||||
6 | Időlimit túllépés | 578ms | 12688 KiB |