zoukankan      html  css  js  c++  java
  • 1260 不一样的A+B

    1260 不一样的A+B

    题目描述

    读入两个小于100的正整数A和B,计算A+B的值并输出。

    需要注意的是:整数A和B的每一位数字由对应的英文单词给出。如整数34表示为three four。

    输入要求

    测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔。当A和B同时为0时输入结束,此时的结果不要输出。

    输出要求

    对每个测试用例输出一行结果,即A+B的值,用数值形式输出。

    测试数据

    one + two =
    three four + five six =
    zero seven + eight nine =
    zero + zero =
    
    3
    90
    96
    

    AC代码

    因为写的烦,所以记录了下,方便大家看看

    #include <bits/stdc++.h>
    using namespace std;
    string s[10]= {"zero","one","two","three","four","five","six","seven","eight","nine"};
    int find(string res) {
    	for(int i=0; i<10; i++) {
    		if(s[i]==res) return i;
    	}
    }
    int main() {
    	string in,temp="";
    	int a,b,t=0;
    	while(getline(cin,in)) {
    		t=0;
    		temp="";
    		for(int i=0; i<in.size(); i++) {
    			if(in[i]>='a' && in[i]<='z') temp+=in[i];
    			if(in[i]==' ') {
    				if(temp=="") continue;//如果没有这句话,多余“ ”会产生额外的数
    				t=t*10+find(temp);
    				temp="";
    			}
    			if(in[i]=='+') {
    				a=t;
    				t=0;
    			}
    			if(in[i]=='=') b=t;
    		}
    		if(a==0 && b==0) break;
    		else cout<<a+b<<endl;
    	}
    
    	return 0;
    }
    
    
  • 相关阅读:
    P2043 质因子分解
    CODE[VS] 3164 质因数分解
    借过
    CODE[VS] 1165 字符串的展开 || P1098 字符串的展开
    CODE[VS] 1144 守望者的逃离 || P1095 守望者的逃离
    CODE[VS] 2914 吹空调
    AC日记
    AC日记
    山科日记—回文
    山科日记—编写函数myFloor和myCeil(编程题)
  • 原文地址:https://www.cnblogs.com/xxhao/p/14315832.html
Copyright © 2011-2022 走看看