题目
输入两个整数,使用按位异或运算(不引入第三个临时变量)交换两个变量的值并输出。
输入格式:输入一行包含两个整数 a b,以空格分隔。
输出格式:输出交换后的两个整数,以空格分隔,末尾换行。
数据范围与约定:数值在标准整数范围内。
思路与算法
1. 异或运算定律a ^ a = 0 且 a ^ 0 = a。经典三行操作:a ^= b; b ^= a; a ^= b 即可完成互换。
2. Python 原生写法
Python 实际开发中推荐直接使用元组解包 a, b = b, a。
完整程序
a, b = map(int, input().split())
# 经典异或运算法交换两数
a ^= b
b ^= a
a ^= b
print(f'{a} {b}')运行示例
输入:
3 7输出:
7 3