1082 Read Number in Chinese (25分)
// 1082.cpp : 定义控制台应用程序的入口点。
// #include <iostream>
#include <string>
#include <vector>
using namespace std;
string str;
string s1[4] = { "Ge","Shi","Bai","Qian" };
string s2[10] = { "ling","yi","er","san","si","wu","liu","qi","ba","jiu" };
vector<string> rs, t;
int main()
{
int n;
cin >> n;
if (n<0)
cout << "Fu ";
else if (n == 0) {
cout << "ling"; /*一个零特判*/
return 0;
}
str = to_string(abs(n));
int len = str.size();
for (int i = 0; i < len; i++) {
rs.push_back(s2[str[i] - '0']);
int pos = len - i - 1;
if (pos % 4 && str[i] != '0') /* 0十->0*/
rs.push_back(s1[pos % 4]);
if (pos == 4)
rs.push_back("Wan"); /*到万位加万,亿位加亿*/
if (pos == 8)
rs.push_back("Yi");
}
for (int i = 0; i < rs.size(); i++) {
t.push_back(rs[i]);
if (i != 0 && rs[i] == "ling"&&rs[i - 1] == "ling") /*删除连续的零为一个零*/
t.pop_back();
}
t.push_back("Wan");
for (int i = 0; i < t.size()-1; i++) {
if (t[i] == "ling" && t[i + 1] == "Wan" )/*删除单个不需要的零如有1000->yi qian ling->yi qian*/
continue;
if (i != 0)
cout << " ";
cout << t[i];
}
return 0;
}
https://pintia.cn/problem-sets/994805342720868352/problems/994805385053978624
1082 Read Number in Chinese (25分)的更多相关文章
- 【PAT甲级】1082 Read Number in Chinese (25 分)
题意: 输入一个九位整数,输出它的汉字读法(用拼音表示). trick: 字符串数组""其实会输出一个空格,而不是什么都不输出,导致测试点0和4格式错误. AAAAAccepted ...
- A1082 Read Number in Chinese (25 分)
1082 Read Number in Chinese (25 分) Given an integer with no more than 9 digits, you are supposed t ...
- 1082. Read Number in Chinese (25)
题目如下: Given an integer with no more than 9 digits, you are supposed to read it in the traditional Ch ...
- 1082. Read Number in Chinese (25)-字符串处理
题意就是给出9位以内的数字,按照汉子的读法读出来. 读法请看下方的几个例子: 5 0505 0505 伍亿零伍佰零伍万零伍佰零伍 5 5050 5050 伍亿伍仟零伍拾万伍仟零伍拾 (原本我以为这个 ...
- PAT (Advanced Level) 1082. Read Number in Chinese (25)
模拟题. #include<cstdio> #include<cstring> #include<cmath> #include<vector> #in ...
- pat1082. Read Number in Chinese (25)
1082. Read Number in Chinese (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yu ...
- 1082 Read Number in Chinese (25 分)
1082 Read Number in Chinese (25 分) Given an integer with no more than 9 digits, you are supposed to ...
- A1082 Read Number in Chinese (25)(25 分)
A1082 Read Number in Chinese (25)(25 分) Given an integer with no more than 9 digits, you are suppose ...
- PAT 1082 Read Number in Chinese[难]
1082 Read Number in Chinese (25 分) Given an integer with no more than 9 digits, you are supposed to ...
随机推荐
- 【常识】常用RGB颜色对照表
RGB颜色表 白色:rgb(255,255,255) 黑色:rgb(0,0,0) 红色:rgb(255,0,0) 绿色:rgb(0,255,0) 蓝色:rgb(0,0,255) 青色:rgb(0,25 ...
- SSG (slow global), TTG (typical global) and FFG (fast global)
https://semiwiki.com/x-subscriber/clk-design-automation/4481-variation-alphabet-soup/ n response, fo ...
- linux 压测jmeter24h稳定性测试
环境准备: 安装jmeter,JDK: wget https://archive.apache.org/dist/jmeter/binaries/apache-jmeter-5.1.tgz cd ...
- docker容器 - 宿主机和容器之间复制文件(cp)
实验环境 CentOS 7.5 容器 容器是镜像的运行实例.不同的是,镜像是静态的只读文件,而容器带有运行时需要的可写文件层:同时,容器中的应用进程处于运行状态. 主机和容器之间复制文件 要想实现在主 ...
- 《Qt Quick核心编程》勘误
本文将结合章节和问题发现的先后顺序来编排,具体是酱紫的:每个章节单列出来作为本文的一节,在该节下按时间顺序列出发现的问题. 第4章 1). 51页第六行:“ iconName 属性定图标的名字”,其中 ...
- PHP 超全局变量之$GLOBALS
$GLOBALS——引用全局作用域中可用的全部变量. $GLOBALS一个包含了全部变量的全局组合数组.变量的名字就是数组的键.(即所有出现过的全局变量,都可通过$GLOBALS获取到) 注释: “S ...
- 如何将mongo查询结果导出到文件中
1.新建一个js文件,将查询方法写进去,如dump.js,文件内容如下 var c = db.campaign.find({status:1}).limit(5) while(c.hasNext()) ...
- (转)JSONObject的toBean 和 fromObject
public static void main(String[] args) { Map map=new HashMap();map.put("我","妹"); ...
- 出现xxxtbox问题又有集群网络等问题时的解决
出现xxxtbox问题又有集群网络等问题时的解决 集群环境本身问题引发 重新rancher上删除集群,正常构建集群成功,环境就没问题,否则由于环境问题怎么找解决方案都有问题
- 在MyEclipse2017中配置JDK和Tomcat8.5
在MyEclipse2017中配置Tomcat8.5: 首先,确保你已安装好JDK.Tomcat等 1.启动MyEclipse后,点击菜单栏的"Window": 2.为MyEcli ...