试题 基础练习 数的读法

资源限制

时间限制:1.0s   内存限制:512.0MB

问题描述

  Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿。
  比如说,在对学生讲解第1234567009号位置上的碱基时,光看着数字是很难准确的念出来的。
  所以,他迫切地需要一个系统,然后当他输入12 3456 7009时,会给出相应的念法:
  十二亿三千四百五十六万七千零九
  用汉语拼音表示为
  shi er yi san qian si bai wu shi liu wan qi qian ling jiu
  这样他只需要照着念就可以了。
  你的任务是帮他设计这样一个系统:给定一个阿拉伯数字串,你帮他按照中文读写的规范转为汉语拼音字串,相邻的两个音节用一个空格符格开。
  注意必须严格按照规范,比如说“10010”读作“yi wan ling yi shi”而不是“yi wan ling shi”,“100000”读作“shi wan”而不是“yi shi wan”,“2000”读作“er qian”而不是“liang qian”。

输入格式

  有一个数字串,数值大小不超过2,000,000,000。

输出格式

  是一个由小写英文字母,逗号和空格组成的字符串,表示该数的英文读法。

样例输入

1234567009

样例输出

shi er yi san qian si bai wu shi liu wan qi qian ling jiu

Python版

num = list(map(int, input()))wei = {1: 'shi', 2: 'bai', 3: 'qian', 4: 'wan',5: 'shi', 6: 'bai', 7: 'qian', 8: 'yi', 9: 'shi'}
yin = {1: 'yi', 2: 'er', 3: 'san', 4: 'si',5: 'wu', 6: 'liu', 7: 'qi', 8: 'ba', 9: 'jiu'}ans = []
for i in range(len(num)):if num[i] == 0 and i < len(num) - 1:if num[i+1] != 0:ans.append('ling')continue# '10'高位的10的特殊发音处理if num[i] == 1 and (len(num)-1-i == 9 or len(num) - 1 - i == 5):ans.append('shi')else:if num[i] in yin:ans.append(yin[num[i]])if len(num) - 1 - i in wei:ans.append(wei[len(num) - 1 - i])print(*ans)

c++版

#include<iostream>
using namespace std;int main(){char *num[]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};char *wei[]={"shi","bai","qian","wan","yi"};char *str[20];  //存最后结果//i:4位数为一组//j:数组str的下标//k:n的最后一位数int i,j,k,n,l[2]={0};i=0;j=0;cin>>n;while(n>0){k=n%10;n/=10;if(k>0){if(i>0){if(i>=4 && !l[i/4-1]){  //如果是大于等于4位数的数,且已经加了一个wei,那么久不要添加l[i/4-1]=1;str[j++]=wei[i/4+2];}if(i%4!=0){str[j++]=wei[i%4-1];}}str[j++]=num[k];}else if(j>0 && str[j-1]!=num[0]){   //判断连续另个是不是都是0str[j++]=num[0];}i++;}if(!(str[j-1]=="yi" && j>1 && str[j-2]=="shi"))  //去除yi shi的情况cout<<str[j-1]<<" ";        //输出第一位数for(i=j-2;i>=0;i--){        //输出剩余的各个字符串cout<<str[i]<<" ";}return 0;
}

蓝桥杯试题 基础练习 数的读法(c++ Python)相关推荐

  1. 蓝桥杯--试题 基础练习 数的读法

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  2. Java实现 蓝桥杯 蓝桥杯VIP 基础练习 数的读法

    问题描述 当输入12 3456 7009时,会给出相应的念法: 十二亿三千四百五十六万七千零九 用汉语拼音表示为 shi er yi san qian si bai wu shi liu wan qi ...

  3. [Java] 蓝桥杯BASIC-20 基础练习 数的读法

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  4. 蓝桥杯 BASIC-20 基础练习 数的读法 问题

    问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从0开始编号,到几百万,几千万,甚至上亿. 比如说,在对学生讲解第123456700 ...

  5. Python 蓝桥杯试题 基础练习 特殊回文数

    Python 蓝桥杯试题 基础练习 特殊回文数 问题描述: 123321是一个非常特殊的数,它从左边读和从右边读是一样的. 输入一个正整数n, 编程求所有这样的五位和六位十进制数,满足各位数字之和等于 ...

  6. 试题 基础练习 数的读法

    试题 基础练习 数的读法 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 Tom教授正在给研究生讲授一门关于基因的课程,有一件事情让他颇为头疼:一条染色体上有成千上万个碱基对,它们从 ...

  7. Python 蓝桥杯试题 基础练习 数列排序

    Python 蓝桥杯试题 基础练习 数列排序 题目描述: 问题描述 给定一个长度为n的数列,将这个数列按从小到大的顺序排列.1<=n<=200 输入格式 第一行为一个整数n. 第二行包含n ...

  8. 蓝桥杯试题 基础练习 数列特征python

    蓝桥杯试题 基础练习 数列特征python 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给出n个数,找出这n个数的最大值,最小值,和. 输入格式 第一行为整数n,表示数的个数. ...

  9. 蓝桥杯试题 基础练习 十六进制转十进制

    蓝桥杯试题 基础练习 十六进制转十进制 C/C++实现 资源限制 时间限制:1.0s 内存限制:512.0MB 问题描述 从键盘输入一个不超过8位的正的十六进制数字符串,将它转换为正的十进制数后输出. ...

最新文章

  1. 120. Triangle 三角形最小路径和
  2. 一个很炫的图片/相册浏览控件(Flex实现)
  3. 基于JAVA+SpringMVC+Mybatis+MYSQL的奖学金评定管理系统
  4. 微课系列(5):Python程序中__name__变量的用法
  5. 苹果mac思维导图软件:mindmanager
  6. asp.net ashx导出excel到前台
  7. python进行主成分分析_python 主成分分析
  8. STM32利用AES加密数据、解密数据
  9. python Pystaller 将python文件打包成exe
  10. python词云生成与设计实现_基于python的词云生成(二)
  11. 服务器温度显示过高,服务器机房温度过高
  12. 数据库之SQL的主键和外键的作用
  13. 关于真空荧光显示屏的·学习记录
  14. maven报错:Failed to execute goal on project ...: Could not resolve dependencies for project ...
  15. java web实验报告_JavaWeb实验报告
  16. python怎么同时对多行代码进行注释?
  17. PAT乙级C语言 1028 人口普查
  18. 网页中,M3U8格式的视频下载
  19. 计划评审技术PERT和关键路径法CP
  20. 常用的python标准库有哪些?

热门文章

  1. nch photopad mac支持哪些文件格式?
  2. 操作系统 公交车司机与售票员进程协同活动问题 PV操作
  3. npm包管理的一个小错误, No repository field,No description
  4. asp.net DES加密解密
  5. 深度学习与计算机视觉教程(4) | 神经网络与反向传播(CV通关指南·完结)
  6. 数据抓包工具(http/https)Charles,wireshark,fiddler的安装使用和区别对比 链接:https://www.365jz.com/article/24504 著作权归作者
  7. 蓝牙读写卡器_蓝牙卡复制方法
  8. 严重 [RMI TCP Connection(3)-127.0.0.1]
  9. 关于Pycharm第三方安装失败问题解决方法
  10. scapy刺探星巴克无线网,记录顾客信息