如何使用从 array1 中获取的元素作为 array2 的索引?
how to use an element taken from array1 as index to array2?
这就是 FUNCTION:I 想要将 y 作为数组 s0 和 s1 的索引。我怎么做?这段代码有什么问题?
def dynamicArray(n, queries):
# Write your code here
lastAnswer=0
s0=[]
s1=[]
l=len(queries)
for i in range(l):
qtype=queries[i][0]
x=queries[i][1]
y=queries[i][2]
if qtype==1:
if ((x^lastAnswer)%2==0):
s0.append(y)
elif ((x^lastAnswer)%2==1):
s1.append(y)
if qtype==0:
if ((x^lastAnswer)%2==0):
return lastAnswer==s0[y]
elif ((x^lastAnswer)%2==1):
return lastAnswer==s1[y]
您的代码存在问题,您误解了“^”运算符。我向您保证您认为它会求幂,而实际上它用于执行 Binary(XOR) 运算。 Python 使用 **
求幂。
看到这个:
Binary XOR(^)
It performs bit by bit XOR(exclusive-OR) on the two values. Here, XOR-ing 10(2) and 11(3) results in 01(1).
>>> 2^3
所以你需要做的就是改变运算符如下,然后你就可以使用索引作为数组中的元素。
def dynamicArray(n, queries):
# Write your code here
lastAnswer=0
s0=[]
s1=[]
l=len(queries)
for i in range(l):
qtype=queries[i][0]
x=queries[i][1]
y=queries[i][2]
if qtype==1:
if ((x**lastAnswer)%2==0):
s0.append(y)
elif ((x**lastAnswer)%2==1):
s1.append(y)
if qtype==0:
if ((x**lastAnswer)%2==0):
return lastAnswer==s0[y]
elif ((x**lastAnswer)%2==1):
return lastAnswer==s1[y]
这就是 FUNCTION:I 想要将 y 作为数组 s0 和 s1 的索引。我怎么做?这段代码有什么问题?
def dynamicArray(n, queries):
# Write your code here
lastAnswer=0
s0=[]
s1=[]
l=len(queries)
for i in range(l):
qtype=queries[i][0]
x=queries[i][1]
y=queries[i][2]
if qtype==1:
if ((x^lastAnswer)%2==0):
s0.append(y)
elif ((x^lastAnswer)%2==1):
s1.append(y)
if qtype==0:
if ((x^lastAnswer)%2==0):
return lastAnswer==s0[y]
elif ((x^lastAnswer)%2==1):
return lastAnswer==s1[y]
您的代码存在问题,您误解了“^”运算符。我向您保证您认为它会求幂,而实际上它用于执行 Binary(XOR) 运算。 Python 使用 **
求幂。
看到这个:
Binary XOR(^)
It performs bit by bit XOR(exclusive-OR) on the two values. Here, XOR-ing 10(2) and 11(3) results in 01(1).
>>> 2^3
所以你需要做的就是改变运算符如下,然后你就可以使用索引作为数组中的元素。
def dynamicArray(n, queries):
# Write your code here
lastAnswer=0
s0=[]
s1=[]
l=len(queries)
for i in range(l):
qtype=queries[i][0]
x=queries[i][1]
y=queries[i][2]
if qtype==1:
if ((x**lastAnswer)%2==0):
s0.append(y)
elif ((x**lastAnswer)%2==1):
s1.append(y)
if qtype==0:
if ((x**lastAnswer)%2==0):
return lastAnswer==s0[y]
elif ((x**lastAnswer)%2==1):
return lastAnswer==s1[y]