POJ-2121 Inglish-Number Translator-数字英译汉
来源:互联网 发布:网络推广的岗位职责 编辑:程序博客网 时间:2024/05/18 18:18
Inglish-Number Translator
Time Limit: 1000MS Memory Limit: 65536KTotal Submissions: 4885 Accepted: 1905
Description
In this problem, you will be given one or more integers in English. Your task is to translate these numbers into their integer representation. The numbers can range from negative 999,999,999 to positive 999,999,999. The following is an exhaustive list of English words that your program must account for:
negative, zero, one, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen, fifteen, sixteen, seventeen, eighteen, nineteen, twenty, thirty, forty, fifty, sixty, seventy, eighty, ninety, hundred, thousand, million
negative, zero, one, two, three, four, five, six, seven, eight, nine, ten, eleven, twelve, thirteen, fourteen, fifteen, sixteen, seventeen, eighteen, nineteen, twenty, thirty, forty, fifty, sixty, seventy, eighty, ninety, hundred, thousand, million
Input
The input consists of several instances. Notes on input:
The input is terminated by an empty line.
- Negative numbers will be preceded by the word negative.
- The word "hundred" is not used when "thousand" could be. For example, 1500 is written "one thousand five hundred", not "fifteen hundred".
The input is terminated by an empty line.
Output
The answers are expected to be on separate lines with a newline after each.
Sample Input
sixnegative seven hundred twenty nineone million one hundred oneeight hundred fourteen thousand twenty two
Sample Output
6-7291000101814022
Source
CTU Open 2004,UVA 486
这个。。就是直接暴力模拟吧。。还好过了。。
/* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *作 者:单昕昕 *完成日期:2015年8月22日 *版 本 号:v1.0 */ #include<iostream>#include<cstdio>#include<cstring>using namespace std;int main(){ char s[100],c; int sum=0,ans=0,flag; while(cin>>s) { if(strcmp(s,"negative")==0)flag=1; else if(strcmp(s,"zero")==0)sum+=0; else if(strcmp(s,"one")==0)sum+=1; else if(strcmp(s,"two")==0)sum+=2; else if(strcmp(s,"three")==0)sum+=3; else if(strcmp(s,"four")==0)sum+=4; else if(strcmp(s,"five")==0)sum+=5; else if(strcmp(s,"six")==0)sum+=6; else if(strcmp(s,"seven")==0)sum+=7; else if(strcmp(s,"eight")==0)sum+=8; else if(strcmp(s,"nine")==0)sum+=9; else if(strcmp(s,"ten")==0)sum+=10; else if(strcmp(s,"eleven")==0)sum+=11; else if(strcmp(s,"twelve")==0)sum+=12; else if(strcmp(s,"thirteen")==0)sum+=13; else if(strcmp(s,"fourteen")==0)sum+=14; else if(strcmp(s,"fifteen")==0)sum+=15; else if(strcmp(s,"sixteen")==0)sum+=16; else if(strcmp(s,"seventeen")==0)sum+=17; else if(strcmp(s,"eighteen")==0)sum+=18; else if(strcmp(s,"nineteen")==0)sum+=19; else if(strcmp(s,"twenty")==0)sum+=20; else if(strcmp(s,"thirty")==0)sum+=30; else if(strcmp(s,"forty")==0)sum+=40; else if(strcmp(s,"fifty")==0)sum+=50; else if(strcmp(s,"sixty")==0)sum+=60; else if(strcmp(s,"seventy")==0)sum+=70; else if(strcmp(s,"eighty")==0)sum+=80; else if(strcmp(s,"ninety")==0)sum+=90; else if(strcmp(s,"hundred")==0)sum*=100; else if(strcmp(s,"thousand")==0) { ans+=sum*1000; sum=0; } else if(strcmp(s,"million")==0) { ans+=sum*1000000; sum=0; } if((c=getchar())=='\n') { if(flag==1) cout<<-(ans+sum)<<endl; else cout<<ans+sum<<endl; sum=ans=flag=0; } } return 0;}
这个。。就是直接暴力模拟吧。。还好过了。。
0 0
- POJ-2121 Inglish-Number Translator-数字英译汉
- poj 2121-Inglish-Number Translator
- poj 2121 Inglish-Number Translator
- POJ 2121 Inglish-Number Translator
- POJ 2121 Inglish-Number Translator
- poj 2121 Inglish-Number Translator
- poj 2121——Inglish-Number Translator
- poj 2121 Inglish-Number Translator(模拟)
- POJ 2121 Inglish-Number Translator 笔记
- poj 2121.Inglish-Number Translator
- (字符串的模式匹配4.7.12)POJ 2121 Inglish-Number Translator(将英文数字转换成阿拉伯数字)
- POJ2121 Inglish-Number Translator
- B - Inglish-Number Translator
- Inglish-Number Translator
- ZJU2311 Inglish-Number Translator - 模拟 英文数字转换
- ZOJ2311 POJ2121 Inglish-Number Translator
- POJ2121——Inglish-Number Translator
- poj 2121 English-Number Translator
- ios学习之旅---oc面向对象的特点
- cmd下使用命令制作U盘启动盘
- iOS 网络开发NSURLConnection——使用block回调方法发送异步请求
- css实现手风琴图片特效
- 一起talk C栗子吧(第四十回:C语言实例--遍历二叉树)
- POJ-2121 Inglish-Number Translator-数字英译汉
- oc NSDate / Category类目 / 延展
- GitHub 如何删除仓库(repository)
- fork函数创建进程
- 神经网络ANN——SPSS实现
- 【洛谷】P1008 三连击
- Different Ways to Add Parentheses
- 隐藏信号区
- Swift面向对象介绍(一)