2556 | 2023-01-17 02:20:22 | kristof | IntervallumXOR kihívás | python3 | Time limit exceeded 35/100 | 601ms | 13308 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")
Subtask | Sum | Test | Verdict | Time | Memory | ||
---|---|---|---|---|---|---|---|
subtask1 | 0/0 | ||||||
1 | Accepted | 18ms | 11572 KiB | ||||
subtask2 | 15/15 | ||||||
2 | Accepted | 27ms | 12112 KiB | ||||
subtask3 | 0/15 | ||||||
3 | Time limit exceeded | 564ms | 12840 KiB | ||||
subtask4 | 20/20 | ||||||
4 | Accepted | 17ms | 12444 KiB | ||||
subtask5 | 0/50 | ||||||
5 | Time limit exceeded | 601ms | 13144 KiB | ||||
6 | Time limit exceeded | 558ms | 13308 KiB |