#include <sstream>
class Solution {
public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 计算两个数之和
     * @param s string字符串 表示第一个整数
     * @param t string字符串 表示第二个整数
     * @return string字符串
     */
    string solve(string s, string t) {
        // write code here
   if (s.length() < t.length()) {
        string temp = s;
        s = t;
        t = temp;
    }
    vector<char> sVector;
    vector<char> tVector;

    string value("");
    int flag = 0;
    sVector.assign(s.begin(), s.e***ector.assign(t.begin(), t.end());
    reverse(sVector.begin(), sVector.end());
    reverse(tVector.begin(), tVector.end());
    for (vector<char>::iterator iter = sVector.begin(); iter != sVector.end(); ++iter) {
        *iter -= '0';
    }
    for (vector<char>::iterator iter = tVector.begin(); iter != tVector.end(); ++iter) {
        *iter -= '0';
    }

    vector<char>::iterator iterS = sVector.begin();
    vector<char>::iterator iterT = tVector.begin();
    if (s.length() != t.length()) {
        for (int i = 0; i < sVector.size(); i++) {
            int tempInt = 0;
            if (i == tVector.size()) {
                while (flag) {
                    if (i == sVector.size()) {
                        sVector.push_back(flag);
                        break;
                    }
                    tempInt = *(iterS + i) + flag;
                    *(iterS + i) = tempInt % 10;
                    flag = tempInt / 10;
                    tempInt = 0;
                    i++;
                }
                break;
            }
            tempInt = *(iterS + i) + *(iterT + i) + flag;
            *(iterS + i) = tempInt % 10;
            flag = tempInt / 10;
        }
    } else {
        for (int i = 0; i < sVector.size(); i++) {
            int tempInt = 0;
            tempInt = *(iterS + i) + *(iterT + i) + flag;
            *(iterS + i) = tempInt % 10;
            flag = tempInt / 10;
        }
        if (flag) {
            sVector.push_back(flag);
        }
    }
    reverse(sVector.begin(), sVector.end());
    for (vector<char>::iterator iter = sVector.begin(); iter != sVector.end(); ++iter) {
        value += *iter + '0';
    }
        return value;
    }
};