当前位置: 首页 > wzjs >正文

做公司网站写什么信息前端培训哪个机构靠谱

做公司网站写什么信息,前端培训哪个机构靠谱,做vlog网站推荐,网站首页推广python连续正整数和 第十五届蓝桥杯青少年组python比赛省赛真题详细解析 博主推荐 所有考级比赛学习相关资料合集【推荐收藏】 1、Python比赛 信息素养大赛Python编程挑战赛 蓝桥杯python选拔赛真题详解 蓝桥杯python省赛真题详解 蓝桥杯python国赛真题详解 2、Python…

python连续正整数和

第十五届蓝桥杯青少年组python比赛省赛真题详细解析

博主推荐

  • 所有考级比赛学习相关资料合集【推荐收藏】

1、Python比赛

  • 信息素养大赛Python编程挑战赛

  • 蓝桥杯python选拔赛真题详解

  • 蓝桥杯python省赛真题详解

  • 蓝桥杯python国赛真题详解

2、Python考级

  • python等级一级真题解析【电子学会】

  • python等级二级真题解析【电子学会】

  • python等级三级真题解析【电子学会】

  • python等级四级真题解析【电子学会】

一、题目要求

(注:input()输入函数的括号中不允许添加任何信息)

1、编程实现

给定一个正整数 n,请计算n最多可以由多少个连续(2个及以上)的正整数相加得到,如果n不能由连续的正整数相加得到,则输出-1。

例如:n=100;100 可以由以下2组连续的正整数相加得到。

第一组:9、10、11、12、13、14、15、16;

第二组:18、19、20、21、22;

100 最多可以由 8个连续的正整数相加得到,输出8。

例如:n=8, 8不能由连续的正整数相加得到,输出-1。

2、输入输出

输入描述:只有一行,一个正整数n(3≤n≤10^8)

输出描述:只有一行,一个整数,表示 n最多可以由多少个连续的正整数相加得到;如果n不能由连续的正整数相加得到,则输出 -1。

输入样例:

100

输出样例:

8

二、算法分析

  1. 目标:输入n,得到最多可以由多少个连续的正整数相加
  2. 策略:可以先分析一下连续正整数相加的规律,如果有i个连续的正整数相加,起始数字为k,可以表示为:n=k+(k+1)+(k+2)+...+(k+i-1)
  3. 将上面等式化简可以得到:i * (2k + i - 1) / 2 = n,进而得到:2n=i * (2k + i -1)
  4. 由于k是整数,所以2k+i-1大于i,所以2n>i*i,得到 i<sqrt(2n)
  5. 接着就可以遍历每个i从2开始一直到sqrt(2n),检查 (2n-i*(i-1)) 是否能被 2i 整除,并且满足除完之后为正整数,如果找到这样的i就是满足条件的,否则输出-1

本文作者:小兔子编程 作者首页:小兔子编程-CSDN博客

三、程序编写

n = int(input())
res = -1
m = int((2 * n) ** 0.5)
for i in range(2, m + 1):num = 2 * n - i * (i - 1)if num <= 0:breakif num % (2 * i) == 0:k = num // (2 * i)if k > 0:res = i
print(res)

四、程序说明

  1. 利用input输入函数从键盘获取输入数据
  2. 利用int函数将n转换成整数类型
  3. 利用数学求和公式得到i的最大取值为2n的开平方
  4. 连续求和的个数必须是从2个数开始
  5. 利用for循环遍历连续求和的个数,从2开始到最大
  6. 接着num是由求和公式变形而来,得到的是分子,必须是大于0,同时对应的分母就是2*i
  7. 所以必须满足能被整除,最后只要整除的数字大于0,则最大的个数就是i
  8. 利用分支语句if对数字进行校验是否满足条件
  9. 最后通过print函数输出即可

五、运行结果

100
83
2

六、考点分析

难度级别:难,这题相对小朋友们来说有一定的难度,难在数学公式的应用,具体主要考查如下:

  1. 学会分析题目,找到解题思路
  2. 学会简单的算法知识的应用
  3. input函数:Python 中 input() 函数接受一个标准输入数据,返回为 string 类型。
  4. int函数:强制将传入对象转换成整数类型
  5. 学会数学求和公式的使用,以及相应变形公式的应用
  6. 学会for循环的使用:for循环可以遍历任何有序的项及列表元素等等。
  7. range函数:rang(a,b),循环的时候是不包括b的,所以我们这个案例中要转变一下,要想包含b,就应该写成range(a,b+1)
  8. 学会if...条件判断语句的使用:满足条件才执行相应的程序
  9. print函数:用于打印输出,最常见的一个函数。
  10. 充分掌握for循环和数学求和公式及分支语句的使用

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

http://www.dtcms.com/wzjs/14693.html

相关文章:

  • 网站域名商代理商淘宝seo关键词的获取方法有哪些
  • 微信链接网站怎么做的seo兼职
  • 做游戏模板下载网站有哪些宁德市人力资源和社会保障局
  • 未来中森网站建设网络营销策划模板
  • 宝鸡网站建设求职简历十大最靠谱it培训机构
  • 国外做软件界面的设计网站网站排名优化软件联系方式
  • 企业网站做的公司线上卖货平台有哪些
  • 早晨设计 做网站设计吗信息流广告优化师
  • 网站未备案做seo会被k吗网络营销课程个人总结范文
  • 礼品工艺品网站建设高端网站建设公司
  • 手机移动网络屏蔽的网站百度seo技术
  • 如何查看网站所用空间免费网站在线观看人数在哪
  • 票务系统网站模板网站推广的基本方法
  • 做天猫网站多少钱郑州seo排名优化公司
  • 建构网站西安深圳外贸推广公司
  • 网站建设的基础知识个人推广平台
  • 专业做财经直播网站有哪些厦门seo网站管理
  • 怎么找做网站的疫情最新政策最新消息
  • 企业做网站的痛点有哪些郑州网站托管
  • wordpress端口不生效seo自动优化工具
  • 网站开发翻译插件全国疫情防控最新数据
  • 前端网站页面模板下载百度手机助手下载安卓版
  • 福永响应式网站建设百度云搜索引擎官网
  • 做网站的公司都有哪些岗位营销技巧和营销方法心得
  • 自己开发网站要多少钱seo实战视频
  • 郑州企业网站价格h5下一页
  • 国外 外贸 网站 源码河南网站建设
  • 建筑工程网校排行榜正规网站优化推广
  • 网站后台补丁如何做网站域名查询工具
  • 网站方案制作抚州网络推广