有些数据通过不了,但是我找不出错误在哪,有没有大佬帮忙解惑一下
  • 板块P2108 学英语
  • 楼主adtom
  • 当前回复0
  • 已保存回复0
  • 发布时间2021/1/27 11:18
  • 上次更新2023/11/5 04:19:37
查看原帖
有些数据通过不了,但是我找不出错误在哪,有没有大佬帮忙解惑一下
443134
adtom楼主2021/1/27 11:18
#include<iostream>
#include<string>
#include<sstream>
using namespace std;
int main(){
	string c[32]=
	{"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"
	}; 
	int v[32]={-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,30,40,50,60,70,80,90,100,1000,1000000};
	string s;
	int w=0,sum=0;
	int biao;
	getline(cin,s);
	istringstream is(s);
	while(is>>s){
		for(int i=0;i<32;i++){
			if(s==c[i]){
				if(i==29){
					w*=100;
				}
				else if(i==30){
					sum+=w*=1000;
					w=0;
				}
				else if(i==31){
					sum+=w*=1000000;
					w=0;
				}
				else if(i==0)
				 	biao=1;
				else{
					w+=v[i];
				}
			}					 
		}
	}
	sum+=w;
	if(biao==1)
		sum=-sum;
	cout<<sum;
	return 0;
}```
2021/1/27 11:18
加载中...