zoukankan      html  css  js  c++  java
  • 第5章-10.两数之和 (30分)(列表实现和字典实现)

    给定一组整数,还有一个目标数,在给定这组整数中找到两个数字,使其和为目标数,如找到,解是唯一的。找不到则显示 "no answer"。输出的下标按从小到大排序。用一重循环加字典实现。

    输入格式:

    在一行中给出这组数。 在下一行输入目标数

    输出格式:

    在一行中输出这两个数的下标,用一个空格分开。

    输入样例1:

    在这里给出一组输入。例如:

    2,7,11,15
    9
    
     

    输出样例1:

    在这里给出相应的输出。例如:

    0 1
    
     

    输入样例2:

    在这里给出一组输入。例如:

    3,6,9
    10
    
     

    输出样例2:

    在这里给出相应的输出。例如:

    no answer
    用字典实现
     1 # 两数之和-用字典实现
     2 # Author: cnRick
     3 # Time  : 2020-4-4
     4 nums = list(map(int,input().split(',')))
     5 n = int(input())
     6 resultDict = dict()
     7 isNoAnswer = True
     8 for i in nums:
     9     resultDict[i] = n - i
    10 for i,j in resultDict.items():
    11     if j in nums:
    12         print("{:d} {:d}".format(nums.index(i),nums.index(j)))
    13         isNoAnswer = False
    14         break
    15 if isNoAnswer == True:
    16     print("no answer")
    17     

    用列表实现

     1 # 两数之和-用字典实现
     2 # Author: cnRick
     3 # Time  : 2020-4-4
     4 nums = list(map(int,input().split(',')))
     5 n = int(input())
     6 resultDict = dict()
     7 isNoAnswer = True
     8 for i in nums:
     9     resultDict[i] = n - i
    10 for i,j in resultDict.items():
    11     if j in nums:
    12         print("{:d} {:d}".format(nums.index(i),nums.index(j)))
    13         isNoAnswer = False
    14         break
    15 if isNoAnswer == True:
    16     print("no answer")
    17     

    参考代码:https://blog.csdn.net/weixin_45948920/article/details/104706570

  • 相关阅读:
    MAVEN 安装与配置
    MAVEN 常用仓库地址
    一些常用的工具
    springFramework 源码学习之源码下载与编译
    测试工程师学习笔记
    什么是多态
    聚簇索引与非聚簇索引
    正则表达式菜鸟教程
    我的第一篇博客
    转Hibernate继承
  • 原文地址:https://www.cnblogs.com/dreamcoding/p/12630678.html
Copyright © 2011-2022 走看看