Cộng và XOR

Đề bài

Mô tả

Phép XOR bit (hay phép cộng nhị phân theo modulo 2) là phép toán hai ngôi, trong đó mỗi bit của kết quả bằng 1 khi và chỉ khi hai bit ở cùng vị trí của hai toán hạng khác nhau.

Ví dụ, với X=109=11011012Y=41=1010012 thì XY=68=10001002.

Cho hai số nguyên không âm AB. Hãy tìm hai số nguyên không âm XY thỏa mãn đồng thời:

  • A=X+Y
  • B=XY, với là phép XOR bit
  • X là nhỏ nhất trong tất cả các cặp thỏa mãn hai điều kiện trên

Nếu không tồn tại cặp (X,Y) nào thỏa mãn, in ra 1.

Dữ liệu vào

  • Dòng đầu chứa số nguyên A.
  • Dòng thứ hai chứa số nguyên B.

Dữ liệu ra

In ra hai số nguyên không âm XY cách nhau bởi dấu cách, hoặc in ra 1 nếu không có đáp án.

Ràng buộc

  • 0A,B2641

Ví dụ

Input Output Giải thích
142
76
33 109 33+109=14233109=76. Cặp (49,93) cũng thỏa mãn nhưng 33<49 nên đáp án là 33.
1639
1176
-1 AB khác tính chẵn lẻ nên không tồn tại cặp (X,Y) nào.
104066
104066
0 104066 Khi A=B ta luôn có thể chọn X=0, Y=A.
6
2
-1 AB=4 là số chẵn, nhưng vẫn không có cặp (X,Y) nào thỏa mãn.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0