第十五届蓝桥杯复盘python大学A组——试题C 数字诗意

在这里插入图片描述
在这里插入图片描述

思路

数字可以分为

在这里插入图片描述

有诗意的数字可以写成 (i+j)(j-i+1)/2 ( i、j都是正整数 )

i+j 、j-i+1 的奇偶性不同(因为i、j都是正整数)
在这里插入图片描述

因此,
如果一个数是奇数就一定有诗意
eg.3=1+2 ,5=2+3,7=3+4,9=4+5…
原因:根据上述分析得出有诗意的数字一定是 奇数 * 偶数 /2 。一个奇数=该奇数 *2 /2.
eg 3=3 * 2/2

是奇数 * 2的次方的偶数一定有诗意
eg 10=1+2+3+4
原因:根据上述分析得出有诗意的数字一定是 奇数 * 偶数 /2 。奇数 * 偶数=该奇数 * 该偶数 *2 /2.
eg 10=5 * 2 * 2 / 2,2、5的奇偶性不同

所有2的幂次方都没有诗意(1也没有诗意,题目要求至少两个连续的数)。

1、打表验证1~100中没有诗意的数字是2的次方

在这里插入图片描述

2、判断一个数是不是2的次方数

法一:math.log2(n).is_integer() 简单粗暴

在这里插入图片描述

法二:奇数一定不是2的次幂。但是偶数也不一定是2的次方,如果这个偶数的最小因数全是2则是2的次方,如果最小因数含有奇数则不是。

3、题目代码实现

方法一:

在这里插入图片描述

方法二:

在这里插入图片描述

4、python中map的用法

在Python中,map()是一个内置函数,它接收一个函数和一个或多个可迭代对象(如列表、元组等),然后将该函数应用于可迭代对象的每一个元素,并返回一个新的迭代器。(非列表,要获得列表要再转一下)

下面是map()函数的基本用法和几个示例:

map(function, iterable, …)

function:一个应用于每个可迭代对象的元素的函数。
iterable:一个或多个可迭代对象。

示例1:基本使用
在这里插入图片描述

示例2:应用于多个可迭代对象

map()函数也可以同时处理多个可迭代对象。例如,如果我们有两个列表,并想要将它们中的对应元素相加:
在这里插入图片描述

示例3:使用内置函数

我们也可以使用内置函数作为map()的第一个参数。例如,如果我们想要将列表中的每个字符串都转换为大写:
在这里插入图片描述

相关推荐

  1. 2023省赛C/C++大学A题解

    2024-04-23 03:38:03       14 阅读
  2. Python3月中/高级试题

    2024-04-23 03:38:03       11 阅读
  3. Python大学B国赛I题题解

    2024-04-23 03:38:03       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-23 03:38:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-23 03:38:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-23 03:38:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-23 03:38:03       20 阅读

热门阅读

  1. SQL EXPLAIN select_type 为DERIVED啥意思

    2024-04-23 03:38:03       18 阅读
  2. 【.net core】【sqlsugar】批量更新方法

    2024-04-23 03:38:03       14 阅读
  3. PostgreSQL数据库高级sql总结2

    2024-04-23 03:38:03       12 阅读
  4. 线程和进程的区别(面试)

    2024-04-23 03:38:03       12 阅读
  5. ubuntu20.04使用binfmt透明执行riscv64程序

    2024-04-23 03:38:03       15 阅读
  6. std::tuple介绍和使用

    2024-04-23 03:38:03       12 阅读
  7. 大语言模型对于“长序列”的处理方法

    2024-04-23 03:38:03       13 阅读
  8. RTT设备驱动框架学习(UART)

    2024-04-23 03:38:03       16 阅读