在python中计算两个数的和,有一个nums列表和target值

一 .给定一个整数列表 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的列表索引。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬

每种输入只需要对应一个答案。但是,你不能重复使用这个数组中同样位置的元素。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
如果没找到解,输出“Fail”
输入两行,‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬


3 2 4 1 5
6

第一行输入一组整数,以空格间隔,数据全部为int型。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
第二行输入一个整数
输出


1 2

如果有解,输出第一组数据(第一个元素索引最小)的那组解。‪‬‪‬‪‬‪‬‪‬‮‬‫‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬
如果无解,输出“Fail”

二 .代码部分


lst=list(map(int,input().split()))
# split()是将输入的字符以空格分隔,map是转换为int类型的数据,最后再转换为列表
# 转化后为[3,2,4,1,5]
target=eval(input())
t=len(lst)
# 求lst的长度
flag=0
# 设置一个标志数
for i in range(t):
    if flag==1:
        break
    else:
    # 说明是从小到大来进行遍历的
        for j in range(t):
            if lst[i]+lst[j]==target and i!=j :
                print("{} {}".format(i,j))
                flag=1
                break
# 找不到数据,就是flag==0,按规定返回
if flag==0:
    print("Fail")


三. 结果如下

3 2 4 1 5
6
1 2

猜你喜欢

转载自blog.csdn.net/m0_74459049/article/details/130126201