A1082. Read Number in Chinese (25)
来源:互联网 发布:php获取数组第一个key 编辑:程序博客网 时间:2024/06/06 08:37
1082. Read Number in Chinese (25)
时间限制
400 ms
内存限制
65536 kB
代码长度限制
16000 B
判题程序
Standard
作者
CHEN, Yue
Given an integer with no more than 9 digits, you are supposed to read it in the traditional Chinese way. Output "Fu" first if it is negative. For example, -123456789 is read as "Fu yi Yi er Qian san Bai si Shi wu Wan liu Qian qi Bai ba Shi jiu". Note: zero ("ling") must be handled correctly according to the Chinese tradition. For example, 100800 is "yi Shi Wan ling ba Bai".
Input Specification:
Each input file contains one test case, which gives an integer with no more than 9 digits.
Output Specification:
For each test case, print in a line the Chinese way of reading the number. The characters are separated by a space and there must be no extra space at the end of the line.
Sample Input 1:-123456789Sample Output 1:
Fu yi Yi er Qian san Bai si Shi wu Wan liu Qian qi Bai ba Shi jiuSample Input 2:
100800Sample Output 2:
yi Shi Wan ling ba Bai
#include<cstdio>#include<cstring>int main(){char num[10][5] = {"ling","yi","er","san","si","wu","liu","qi","ba","jiu"};char wei[5][5] = {"Shi","Bai","Qian","Wan","Yi"};char str[15];scanf("%s",str);int len = strlen(str);int left = 0,right = len - 1;if(str[0]=='-'){printf("Fu");left++;}while(left+4<=right) right -= 4;while(left<len){bool flag = 0;bool isPrint = 0;while(left<=right){//打印一节if(left>0 && str[left]=='0')//当前位为零flag = 1;else{if(flag == 1){//有累积零,当前位不为零printf(" ling");flag = 0;//已输出,要及时置空}if(left>0) putchar(' ');//不在首位,要留空位printf("%s",num[str[left]-'0']);isPrint = 1;if(left!=right)//不到该节的最后一位printf(" %s",wei[right-left-1]);}left++;}if(isPrint && right!=len-1) //打印万亿等printf(" %s",wei[(len-1-right)/4+2]);right += 4;}putchar('\n');return 0;}
0 0
- A1082. Read Number in Chinese (25)
- 【PAT】A1082. Read Number in Chinese (25)
- A1082. Read Number in Chinese (25)
- PAT A1082. Read Number in Chinese (25/21)
- PAT:A1082. Read Number in Chinese (0/25)
- PAT A1082.Read Number in Chinese(满分)
- PAT A1082. Reading Number in Chinese
- Read Number in Chinese (25)
- PAT 1082. Read Number in Chinese (25)
- pat 1082. Read Number in Chinese (25)
- PAT 1082. Read Number in Chinese (25)
- PAT 1082. Read Number in Chinese(25)
- PAT1082. Read Number in Chinese (25)
- 1082. Read Number in Chinese (25)
- 1082. Read Number in Chinese (25)
- 1082. Read Number in Chinese (25)
- 1082. Read Number in Chinese (25)
- 1082. Read Number in Chinese (25)
- android中canvas.drawText参数的介绍以及绘制一个文本居中的案例
- c#中两种不同的存储过程调用与比较
- BitSet和布隆过滤器(Bloom Filter)
- 使用svn diff的-r参数的来比较任意两个版本的差异
- Mybatis批量操作写法
- A1082. Read Number in Chinese (25)
- 图像----滑动条
- 以代码的形式添加xib,并对xib进行操作
- mina 文件句柄数太高分析与解决
- instancetype和id的区别
- loadrunner监控Linux之前需要做的准备工作
- android 常用URI
- Java 发送邮件 带附件 中文附件名
- VS2013 动态链接库下,动态调用和静态调用的注意点事项