题目1003:A+B

Posted 根叔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了题目1003:A+B相关的知识,希望对你有一定的参考价值。

技术分享

这道题难度不大,但是要搞清不同类型之间的转换。废话少说,先上代码

#include<iostream>
#include<string>
using namespace std;
int main(){
    string A,B;
    while(cin>>A>>B){
        long num1=0,num2=0;
        for(int i=0;i<A.length();i++){
            if(A[i]>=0 && A[i]<=9){
                num1=num1*10+A[i]-0;
            }
        }
        for(int i=0;i<B.length();i++){
            if(B[i]>=0 && B[i]<=9){
                num2=num2*10+B[i]-0;
            }
        }
        if(A[0]==-){
            num1=0-num1;
        }
        if(B[0]==-){
            num2=0-num2;
        }
        cout<<num1+num2<<endl; 
    }
    return 0;
}
/**************************************************************
    Problem: 1003
    User: hg2013211626
    Language: C++
    Result: Accepted
    Time:0 ms
    Memory:1520 kb
****************************************************************/

根据题目要求,每三个数字之间用,分开,所以我这里用字符串输入。在之前我定义了两个long类型的数据,程序第一步便是把string类型转换成long类型。在这里我用一个for循环,依次判断string的每一个字母,如果满足大于0小于9的,便将其转换成数字,具体方法看上面(很巧妙的方法)然后直接计算即可。

以上是关于题目1003:A+B的主要内容,如果未能解决你的问题,请参考以下文章

题目1003:A+B

题目1003:A+B------------------------写的复杂了点

DBSDFZOJ-----1003-----语法百题-----余数

1003.A+B

[Codeforces Round #522 (Div. 2, based on Technocup 2019 Elimination Round 3)][C. Playing Piano](代码片段

HDU1003 Max Sum 解题报告