数字拼音翻译成阿拉伯数字
2015-04-15 20:08
1366 查看
输入一串拼音,输出它代表的阿拉伯数字(Ling,Yi,Er,San,Si,Wu,Liu,Qi,Ba,Jiu),数字不会超过十万
为了处理方便,输入一定是只有数字拼音的,没有其他的单词或者字符。
输入:JiuBaWuSi
输出:9854
基本思路:
可以看出拼音最短为2个字符,最长为4个字符。
两位开始扫,没有,扫三位,三位没有扫四位,二位三位四位都没有,则从下一位开始扫。
为了处理方便,输入一定是只有数字拼音的,没有其他的单词或者字符。
输入:JiuBaWuSi
输出:9854
基本思路:
可以看出拼音最短为2个字符,最长为4个字符。
两位开始扫,没有,扫三位,三位没有扫四位,二位三位四位都没有,则从下一位开始扫。
#include<iostream> #include<string> using namespace std; void change(string str){ char *ch[]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu"}; int i,j,len,k; len=str.length(); string s; for(i=0;i<len;i++) for(j=i+1;j<len&&j-i+1<=4;j++){ s=str.substr(i,j-i+1); for(k=0;k<=9;k++) if(!s.compare(ch[k])){ cout<<k; break; } } cout<<endl; } void main(){ string s; while(cin>>s) change(s); }
相关文章推荐
- 华为机试—拼音翻译成阿拉伯数字(有Wan,Qian,Bai,Shi单位)
- 拼音翻译成阿拉伯数字_华为SO挑战赛2015年8月
- 华为机试—拼音翻译成阿拉伯数字(只有数字拼音)
- 拼音翻译成阿拉伯数字
- 华为机试-拼音翻译成阿拉伯数字
- 拼音翻译为阿拉伯数字
- 拼音翻译成阿拉伯数字
- 每天一道算法题——拼音翻译成阿拉伯数字(只有数字拼音)
- 拼音翻译成阿拉伯数字
- 每天一道算法题——拼音翻译成阿拉伯数字(有Wan,Qian,Bai,Shi单位)
- PAT 1082. Read Number in Chinese (25)(把九位内的数字翻译成拼音输出)
- C#中 利用汉字在计算机里面的编码来得到汉字的首拼音 及 阿拉伯数字
- 将数字转换成对应的中文 将阿拉伯数字翻译成中文的大写数字
- 输入数字的汉语拼音,每个拼音的首字母大写。输出该数字的阿拉伯数字。
- 给一串阿拉伯数字,把它翻译成汉语
- 趣味程序(将阿拉伯数字翻译为罗马数字)
- 英文数字写法翻译阿拉伯数字 [java实现]
- 阿拉伯数字的翻译【优化】
- 将阿拉伯数字 翻译为 罗马数字
- 控制台直接输入阿拉伯数字自动翻译成相应的英文星期