[Swust OJ 552]--拼音教学(找规律)
2015-06-16 23:48
811 查看
题目链接:http://acm.swust.edu.cn/problem/0552/
Time limit(ms): 1000 Memory limit(kb): 65535
Description
数钱啦~~~输入一个数字,小于999999999999,我们需要把他们转换为拼音,我们规定例如1234000567的念为“1十2亿3千4百万零5百6十7”具体见输入输出
Input
一个数字N
Output
数字加拼音,见SAMPLE OUTPUT
Sample Input
Sample Output
scpc——しιしιπ
解题思路:今晚上全是做的这一类题(大脑已经完全混乱了),就是把数字以字符串的形式输入,然后倒序,与这个字符数组
string p[] = { "","shi", "bai", "qian", "wan", "shi", "bai", "qian", "yi", "shi", "bai", "qian" };匹配,重点就是注意多个零的处理,注意看代码~~
代码如下:
View Code
Time limit(ms): 1000 Memory limit(kb): 65535
Description
数钱啦~~~输入一个数字,小于999999999999,我们需要把他们转换为拼音,我们规定例如1234000567的念为“1十2亿3千4百万零5百6十7”具体见输入输出
Input
一个数字N
Output
数字加拼音,见SAMPLE OUTPUT
Sample Input
999999999999 123456000 1234000567 |
9qian9bai9shi9yi9qian9bai9shi9wan9qian9bai9shi9 1yi2qian3bai4shi5wan6qian 1shi2yi3qian4baiwanling5bai6shi7 |
解题思路:今晚上全是做的这一类题(大脑已经完全混乱了),就是把数字以字符串的形式输入,然后倒序,与这个字符数组
string p[] = { "","shi", "bai", "qian", "wan", "shi", "bai", "qian", "yi", "shi", "bai", "qian" };匹配,重点就是注意多个零的处理,注意看代码~~
代码如下:
#include <iostream> #include <string> #include <algorithm> using namespace std; int ar[15], len; long long n; string s, p[] = { "", "shi", "bai", "qian", "wan", "shi", "bai", "qian", "yi", "shi", "bai", "qian" }; void change(){ reverse(s.begin(), s.end()); int i, flag = 0; for (i = s.size() - 1; i >= 0;){ if (s[i] - '0'){ flag = 0; cout << s[i] << p[i]; i--; } else{ //两个条件不能交换位置如果是6000,则最后一次i=-1,s[-1]无法访问(runtime error一次) while (i >= 0 && !(s[i] - '0')){ if (!(i % 4) && !flag){ flag = 1; cout << p[i]; } i--; } if (i >= 0)cout << "ling"; } } cout << endl; } int main(){ while (cin >> s) change(); return 0; }
View Code
相关文章推荐
- utf-8与gbk的转换
- android 利用hangler倒计时
- j2se学习笔记-java.io.File类
- 为什么需要在TypedArray后调用recycle
- java的匿名内部类
- Python变量
- H5版俄罗斯方块(1)---需求分析和目标创新
- [LeetCode] Combinations
- Map集合使用
- JSP deleteCategory.jsp (line: 9, column: 67) The JSP specification requires that an attribute name i
- Plus One
- php Hash函数了解
- vim方向键乱码
- 2015最流行的android组件、工具、框架大全
- javascript 获取调用属性的对象
- NodeJS框架express的途径映射(路由)功能及控制
- CentOS下如何完全卸载MySQL?解决卸载不干净的问题
- Android中如何查看内存
- 问题安装完hadoop后无法连接dfs
- Andriod网络优化相关技术点整理