結果
| 問題 |
No.3088 XOR = SUM
|
| コンテスト | |
| ユーザー |
Today03
|
| 提出日時 | 2025-04-04 22:25:15 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 1,779 ms / 2,000 ms |
| コード長 | 653 bytes |
| コンパイル時間 | 185 ms |
| コンパイル使用メモリ | 82,532 KB |
| 実行使用メモリ | 77,732 KB |
| 最終ジャッジ日時 | 2025-04-04 22:26:46 |
| 合計ジャッジ時間 | 44,354 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge6 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 22 |
ソースコード
def jikken():
A=[]
for N in range(0,100):
X=0
Y=0
# a=0
# while 1<<(a+1)-1<=N:
# a+=1
# N=(1<<a)-1
f=True
for i in reversed(range(64)):
if N&(2**i)>0:
if f:
X+=1<<i
f=False
else:
Y+=1<<i
if N>0 and X*Y<A[-1]:
print(N-1,N,A[-1],X*Y)
A.append(X*Y)
print(A)
# jikken()
# print("OK")
def solve(N):
X=0
Y=0
f=True
for i in reversed(range(64)):
if N&(2**i)>0:
if f:
X+=1<<i
f=False
else:
Y+=1<<i
return (X*Y,X,Y)
for _ in range(int(input())):
N=int(input())
ans=solve(N)
a=0
while (1<<(a+1))-1<=N:
a+=1
N=(1<<a)-1
ans=max(ans,solve(N))
print(ans[1],ans[2])
Today03