Python实现:2022年第十三节蓝桥杯省赛C/C++A组试题(选数异或)
·

题解说明:
(1)数列本质上是一组按照特定顺序排列的数字;
(2)一维数组a存放n个数,本题解,下标从0开始
(2)input()默认字符型,所以要进行int()处理;
(3)区间[l,r],l <r;区间属于a,l对应a[l-1],r对应a[r-1]
(4)区间[l,r]之间的两个数,应是不同的数,相同的数,相同的两个数异或等于0;
- for j in range(l,r-1):
- for k in range(j+1,r):
n,m,x=map(int,input().split())
a=[int(i) for i in input().split()]
for i in range(m):
flag=0
l,r=map(int,input().split())
for j in range(l-1,r-1):
for k in range(j+1,r):
if a[j]^a[k]==x:
flag=1
if flag==1:print('yes')
else:print('no')
4 4 1
1 2 3 4
1 4
yes
1 2
no
2 3
yes
3 3
no
数组下标从1开始:
n,m,x=map(int,input().split())
a=[0]+[int(i) for i in input().split()]
for i in range(m):
flag=0
l,r=map(int,input().split())
for j in range(l,r):
for k in range(j+1,r+1):
if a[j]^a[k]==x:
flag=1
if flag==1:print('yes')
else:print('no')
4 4 1
1 2 3 4
1 4
yes
1 2
no
2 3
no
3 3
no
更多推荐
所有评论(0)