2555 | 2023-01-17 02:00:53 | kristof | IntervallumXOR kihívás | python3 | Időlimit túllépés 35/100 | 577ms | 12772 KiB |
#spagetti
from sys import stdin, stdout
import sys
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):
if x[i] % 4 == 0:
xor = x[i]
if x[i] % 4 == 1:
xor = 1
if x[i] % 4 == 2:
xor = x[i] + 1
if x[i] % 4 == 3:
xor = 0
drop = xor
m = mm
for index in range(30):
if m ^ drop <= x[i]:
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 | 11436 KiB | ||||
subtask2 | 15/15 | ||||||
2 | Elfogadva | 28ms | 11668 KiB | ||||
subtask3 | 0/15 | ||||||
3 | Időlimit túllépés | 577ms | 12284 KiB | ||||
subtask4 | 20/20 | ||||||
4 | Elfogadva | 17ms | 12120 KiB | ||||
subtask5 | 0/50 | ||||||
5 | Időlimit túllépés | 564ms | 12772 KiB | ||||
6 | Időlimit túllépés | 559ms | 12668 KiB |