python大于小于1023python大于小于_PythonPAT 1023 Have Fun with Numbers
题目
Notice that the number 123456789 is a 9-digit number consisting exactly the numbers from 1 to 9, with no duplication. Double it we will obtain 246913578, which happens to be another 9-digit number consisting exactly the numbers from 1 to 9, only in a different permutation. Check to see the result if we double it again!
Now you are suppose to check if there are more numbers with this property. That is, double a given number with k digits, you are to tell if the resulting number consists of only a permutation of the digits in the original number.
Input Specification:
Each input contains one test case. Each case contains one positive integer with no more than 20 digits.
Output Specification:
For each test case, first print in a line “Yes” if doubling the input number gives a number that consists of only a permutation of the digits in the original number, or “No” if not. Then in the next line, print the doubled number.
Sample Input:
11234567899
Sample Output:
1
2Yes
2469135798
题解
思路
建立一个哈希表,存放每个字符出现的次数
将原数乘以2后,和哈希表每个字符出现的次数作对比
完事儿嗷
数据结构
_dict 是一个哈希表,对每个键默认值是0
键是0到9的字符
值是它出现的次数
算法
对作为字符串的原数,按照每一个字符出现的次数添加到哈希表
将原数乘以2,对每一个出现的字符,哈希表相应减一
如果哈希表不是每一项都为0,那么就说明是No
代码
因为使用Python能AC,因此只放了Python的代码。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17from collections import defaultdict
_dict = defaultdict(int)
a = input()
for i in a:
_dict[i] += 1
a = str(int(a) * 2)
for i in a:
_dict[i] -= 1
for i in "0123456789":
if _dict[i] != 0:
print("No")
break
else:
print("Yes")
print(a)
python大于小于1023python大于小于_PythonPAT 1023 Have Fun with Numbers相关推荐
- shell中大于、等于、小于
shell中大于.等于.小于 -eq 等于 -ne 不等于 -gt 大于 -lt 小于 -ge ...
- 关于“小于/等于/大于”的英文缩写
前言: 最近统计服务需要增加几个关于秒级别范围的消息数目.看到这个描述你们可能有点懵,举个例子:统计发送消息的耗时大于3s的消息数目.此时需要给这个字段命名,我突然词穷. 还好想到了小于/等于/大于此 ...
- 图片的分辨率大于设备分辨率或者小于设备的分辨率的显示问题
做程序开发,尤其是手机app开发,经常接触到图片的处理,有时服务器获取的图片大于自己本地要显示的大小(自己限制的),有时要小于,但是设备怎么显示我一直有个疑问,那就是如果图片的分辨率大于设备的分辨率而 ...
- mysql 小于号转义_mybatis ![CDATA[ ]] 使用,小于大于号转义 和小于号大于号使用
CDATA 在今天使用Mybatis的xml文件中写sql语句时写入了一些特殊字符 如 < > & 等,但解析xml文件的时候会被转义,事实上并不希望它被转义,可以使用. 这是XM ...
- 企业发放的奖金根据企业的当年利润决定。当利润I低于或等于100000元时,奖金可提成10%;利润大于100000元,小于200000元(100000<I≤200000)时,低于100000元的部分按1
企业发放的奖金根据企业的当年利润决定.当利润I低于或等于100000元时,奖金可提成10%:利润大于100000元,小于200000元(100000<I≤200000)时,低于100000元的部 ...
- PAT甲级1023 Have Fun with Numbers:[C++题解]高精度加法和两个vector大小比较
文章目录 题目分析 题目链接 题目分析 使用高精度加法高精度加法板子求 这个数的两倍,存在一个vector中. 所谓高精度就是使用string来存大的数,然后模拟列竖式加法,结果一位一位压入数组vec ...
- python判断输入数字大于0,对python 判断数字是否小于0的方法详解
对python 判断数字是否小于0的方法详解 为了精度更准确 可以使用数字的绝对值 < 1.0e-16 或者 < 1.0e-8来对比 abs(Num) 以上这篇对python 判断数字是 ...
- python:比较运算符(等于,小于,大于,不等于,大于等于,小于等于)的简单用法
比较(关系)运算符 相关内容(表格) 相关说明 源码 运行结果 相关内容(表格) 运算符 作用 > 大于 < 小于 == 等于 != 不等于 >= 大于等于 <= 小于等于 相 ...
- Python PTA实验课 求小于某一大于2的自然数的所有素数
求小于某一大于2的自然数的所有素数 输入一个大于2的自然数,输出小于该自然数的所有素数组成的列表 输入格式: 一个大于2的自然数 输出格式: 如果输入自然数大于2,则输出小于该自然数的所有素数组成的列 ...
最新文章
- OpenC 仿射变换
- 人生第一份Offer,国企、私企、外企该选择哪一个?
- Qt Creator使用3D组件
- ehcache + mysql例子与性能测试
- visual studio 设计器不显示_与城共生:南京朝天宫“参与性”城市设计
- leetcode509. 斐波那契数
- maven插件编写_编写Maven插件的提示
- Myeclipse项目加入maven支持
- MongoDB安装中断问题 - 踩坑篇
- Layui父级页面调用子级页面方法
- python数据生成可视化_Python数据分析:手把手教你用Pandas生成可视化图表
- 关于struts框架的优缺点
- 使用Spring-data-jpa修改数据后,查询到脏数据
- input正则邮箱_JS正则表达式验证email邮箱是否正确
- java 端口流量统计_java—流量统计源码 | 学步园
- 苹果手机白屏_为什么安卓用久了会卡顿,苹果用久了会闪退?看完长知识了
- 【多目标优化】3. 基于分解的多目标进化算法 —(MOEA/D)
- 服务器d盘位置不可用,系统之家Windows7本地磁盘位置不可用拒绝访问的解决方法...
- Mac 运行 JNLP 文件
- JAVA的直接内存介绍
热门文章
- 连接编码器_编码器与PLC的接线
- 直播画面抖动_罗永浩直播带货1.1个亿,企业想玩网络直播,三大专业设备你必须知道...
- python中时间处理_Python中处理时间的几种方法小结
- Java加个书名编号约束条件_java 按照题目所给变量名称、类型和方法名称进行编程 求帮助...
- 二进制文件安装mysql_CentOS7下二进制文件安装MySQL5.6
- ps4修改服务器地区,ps4怎么修改服务器地址
- python中变量和函数的区别_关于python中带下划线的变量和函数 的意义
- java 打开sql数据库_idea 使用Java连接SQL Server数据库教程
- python电脑截图文字识别软件_Python实现文字识别,来看看大牛怎么实现截图/
- Go语言技术教程:Redis介绍安装和使用