zoukankan      html  css  js  c++  java
  • 题目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的,便将其转换成数字,具体方法看上面(很巧妙的方法)然后直接计算即可。

  • 相关阅读:
    Flutter 导航栏上添加搜索按钮
    tabController保活
    nav 选项卡
    flutter 毛玻璃
    [题解]CodeForces878 D
    [题解]CodeForces878C Tournament
    [题解]NOIP2012
    bzoj1070题解
    bzoj1061题解
    bzoj1059题解
  • 原文地址:https://www.cnblogs.com/huanggen/p/5323293.html
Copyright © 2011-2022 走看看