第十七届中国计量大学程序设计竞赛B Broken Pad
B
**题意:**油腻的叔叔在打牌,胖宅男在吃饭…咳
就是输入两个数组,一个a,一个b,问点击哪几个位置可以将a变成比b,要求点击最少次。
PS: 点击的是位置不是下标,点击0就全部清零,而点击对应位置则该位置及以后的数全都取反。
英语好的麻烦自己读题,就都这个题目,废了老大鼻子的劲。
思路: c++的没看懂 python做的话基本思路就是异或,然后按位取反,但是真的每次都按位取反输出内存会爆,所以记录一个变量bool,在奇数次翻转时,a b原本相同则要在反一次,偶数次就找不同…
就大概这么个基本思路
主要是难在实现(ps 用自定义函数会节省一些运行时间,这题上是的)
代码1
for _ in range(int(input())):
a=input()
b=input()
if '1' not in b:#变成全0
print(0)
else:
# print(bin(int(a,2)^int(b,2)))
c=bin(int(a,2)^int(b,2