十二届蓝桥杯Python组3月中/高级试题 第四题

**

十二届蓝桥杯Python组3月中/高级试题 第四题

**


第四题(难度系数 4,30 个计分点)
编程实现:
给定一组包含n个(n>3) 正整数数据,和一个正整数M,从这n个正整数中任意拿出两个数相
加,相加后的结果正好为M的值,计算出这n个正整数中有多少组这样的数据。

例如:
给定一组正整数为:1, 3, 2, 4,正整数M为 3,其中有1组符合要求,为1和2
给定一组正整数为:2, 7, 11, 6, 13,正整数M为 13,其中有2组符合要求,分别为 2 和11,7
和 6
输入描述:第一行输入n个正整数,正整数之间英文逗号隔开(正整数不能有重复,且n>3)
第二行输入一个正整数M 输出描述:输出n个正整数中两个数相加的结果正好为M的组合有几组

样例输入:2, 7, 11, 6, 13
13
样例输出:2


这道题涉及到以下知识点:
1.输入处理:使用 input() 函数获取用户输入的一组正整数和目标正整数 M。通过 split(', ') 方法将输入的字符串按逗号分隔转换为列表形式,然后使用 int() 函数将列表中的字符串元素转换为整数。
2.列表操作:对输入的整数列表进行遍历和操作。利用列表的索引和切片来获取组合的两个数。
3.循环结构:使用嵌套的 for 循环遍历所有可能的数对组合。外层循环控制第一个数的索引,内层循环控制第二个数的索引,确保不会重复计算相同的数对组合。
4.条件判断:在循环中使用条件语句 if 判断两个数相加是否等于目标正整数 M。
5.变量的使用:使用 count 变量来统计符合条件的数对组合的数量。
输出结果:使用 print() 函数输出最终的统计结果。
6。这道题目考察了对列表操作、循环结构和条件判断的掌握,以及如何处理输入和输出。同时,也需要考虑对整数的处理和变量的使用。


版本1

# 完成字符串的输入
a = input()
sum_1 = int(input())    # 输入想要得到的数字 并且完成将字符串类型转化为整数型
# 将字符串输入的格式去除符号', '
# 这个符号最好是直接进行粘贴的操作,因为自己写可能会出现错误
a = a.split(', ')

# 将完成除去部分符号的字符串转化为列表形式 并且将数据类型转化为整数型
list_1 = [int(i) for i in a]

# 记录满足题意的个数
lable = 0

# 进行遍历操作
for i in list_1:
    for j in list_1:
        # 假如没有 i < j 会造成计算了两倍 
        # 因为2 + 7与 7 + 2在题意中属于一种情况
        if (j + i) == sum_1 and i < j:
            lable += 1

print(lable)

版本2

# 获取输入
nums = input("请输入一组正整数,用逗号隔开:").split(', ')  # 将输入的字符串以逗号分隔,并转换为列表
M = int(input("请输入一个正整数M:"))  # 获取目标正整数M

# 将输入的字符串列表转换为整数列表
nums = [int(num) for num in nums]

# 计数符合条件的组合数
count = 0

# 遍历所有可能的组合
for i in range(len(nums)):
    for j in range(i + 1, len(nums)):
        # 如果两个数相加等于目标正整数M,则符合条件,计数器加1
        if nums[i] + nums[j] == M:
            count += 1

# 输出结果
print("输出n个正整数中两个数相加的结果正好为M的组合有{}组".format(count))

相关推荐

  1. Python3/高级试题

    2024-05-10 07:44:09       32 阅读
  2. Python3/高级试题

    2024-05-10 07:44:09       32 阅读
  3. Python3/高级试题

    2024-05-10 07:44:09       28 阅读
  4. Python3/高级试题 第二

    2024-05-10 07:44:09       27 阅读
  5. 棋盘 维差分数

    2024-05-10 07:44:09       47 阅读
  6. 省赛Python(未完)

    2024-05-10 07:44:09       37 阅读
  7. c++B笔记

    2024-05-10 07:44:09       35 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-10 07:44:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-10 07:44:09       101 阅读
  3. 在Django里面运行非项目文件

    2024-05-10 07:44:09       82 阅读
  4. Python语言-面向对象

    2024-05-10 07:44:09       91 阅读

热门阅读

  1. 负载均衡总结

    2024-05-10 07:44:09       39 阅读
  2. Ubuntu服务器命令行关机&重启&查询记录

    2024-05-10 07:44:09       37 阅读
  3. Nacos配置实时更新:微服务架构下的关键实践

    2024-05-10 07:44:09       32 阅读
  4. elasticsearch搭建教程

    2024-05-10 07:44:09       32 阅读
  5. Android ScrollView 在按键向下滚动后会回弹问题

    2024-05-10 07:44:09       32 阅读
  6. 六.音视频编辑-创建视频过渡-应用

    2024-05-10 07:44:09       22 阅读
  7. MySQL变量的定义与使用

    2024-05-10 07:44:09       28 阅读