1001. A+B Format

#include <iostream>
#include <stack>
#include <string>
using namespace std;

int main(void){
    int a,b,cnt=0;
    stack<char> sum1;
    string s1,s2;
    cin>>s1>>s2;
    a=stoi(s1);
    b=stoi(s2);
    int sum=a+b;
    if(sum<0){
        cout<<'-';
        sum=-sum;
    }
    string sum2=to_string(sum);
    for(auto r_iter = sum2.crbegin();r_iter != sum2.crend();++r_iter){
        if(cnt==3){
            sum1.push(',');
            cnt=0;
        }
        sum1.push(*r_iter);
        cnt++;
    }
   while(!sum1.empty()){
        cout<<sum1.top();
        sum1.pop();
   }
  
    return 0;
}

 PAT之路的第一题。主要利用了C++中string和stack的正序逆序来完成整个算法设计。

posted @ 2015-03-26 00:15  MQ-380  阅读(127)  评论(0)    收藏  举报