博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
蓝桥杯特别数的和(编程大题)
阅读量:4176 次
发布时间:2019-05-26

本文共 762 字,大约阅读时间需要 2 分钟。

1.问题描述

样题2:特别数的和(编程大题)

【问题描述】

小明对数位中含有2、0、1、9的数字很感兴趣(不包括前导0),在1到40中这样的数包括1、2、9、10至32、39和40,共28个,他们的和是574。
请问,在 1 到 n 中,所有这样的数的和是多少?

【输入格式】

输入一行包含一个整数 n。
【输出格式】
输出一行,包含一个整数,表示满足条件的数的和。
【样例输入】
40
【样例输出】
574
【评测用例规模与约定】
对于20%的评测用例,1≤n≤10。
对于50%的评测用例,1≤n≤100。
对于80%的评测用例,1≤n≤1000。
对于所有评测用例,1≤n≤10000。

2.问题描述

方法1:这道题并不复杂,python中有find()方法,可以查找一个字符串是否包含在另一个字符串中。

方法2:对每一个数字求个位,十位,百位…与 2 0 19 比较。

'''written by tyb2020/12/25'''if __name__ == '__main__':    n=int(input())  #输入一个整数    count=0    for i in range(1,n+1): #左闭右开        num=str(i)        mark1=num.find("2")  #没有查找到返回-1,查找到返回对应下标        mark2=num.find("0")        mark3=num.find("1")        mark4 = num.find("9")        if(mark1+mark2+mark3+mark4>-4): #满足条件,至少包含一个            count+=i    print(count)  #输出一个整数

转载地址:http://baxai.baihongyu.com/

你可能感兴趣的文章
Oracle PL/SQL之GROUP BY ROLLUP
查看>>
Oracle PL/SQL之GROUP BY CUBE
查看>>
蓝桥杯2018省赛 - A3 乘积尾零
查看>>
蓝桥杯2018省赛 - A4 第几个幸运数
查看>>
命令窗口中javac(即javac.exe)不可用的原因
查看>>
如何完全卸载VS2010
查看>>
【算法概论】分治算法:计算数组中的逆序对
查看>>
【算法概论】分治算法:查找中位数
查看>>
【算法概论】分治算法:k路归并
查看>>
Python debug 一
查看>>
向量vector的初始化
查看>>
android数据存储与访问之使用pull解析器
查看>>
Android 短信模块分析(七) MMS数据库定义及结构整理
查看>>
Android 短信模块分析(八) MMS数据库表关系
查看>>
Android 图标上面添加提醒(二)使用开源UI类库 Viewbadger
查看>>
Android 图标上面添加提醒(一)使用Canvas绘制
查看>>
Android WebView加载Html右边空白问题的解决方案
查看>>
Android 仿网易新闻v3.5:上下滑动的引导页
查看>>
Android 天气预报图文字幕垂直滚动效果
查看>>
Android硬件加速
查看>>