Untitled

 avatar
unknown
plain_text
2 years ago
1.7 kB
1
Indexable
#include <iostream>
#include <fstream>
#include <cmath>
#include <algorithm>
#include <vector>

using namespace std;
ifstream infile("input.txt");
ofstream outfile("output.txt");
bool flag=false;
vector<int> a;
vector<int> b;

void f(string &s){
    vector<int> res;
    char ss[2];
    ss[1] = '\0';
    int ind = 0;
    for (int i=0;i<s.size();i++){
        ss[0]=s[i];
        res.push_back(atoi(ss));
    }
    if (!flag){
        a=res;
        flag=true;
    } else {
        b = res;
    }
}

int main()
{  
    if (infile.is_open()) {
        string line;
        while (getline(infile, line)) {
            string::iterator it = remove(line.begin(), line.end(), '\r');
            line.erase(it, line.end());
            f(line);
        }
    }
    
    int r=0;
    int ind_a=a.size()-1,ind_b = b.size()-1;
    if (ind_a>=ind_b){
        for (int j=0;j<b.size();j++){
            r = a[ind_a]+b[ind_b]+r;
            a[ind_a]=r%10;
            r/=10;
            ind_a --;
            ind_b--;
        }
        for (int j=b.size();j<a.size();j++){
            r +=a[ind_a];
            a[ind_a]=r%10;
            r/=10;
            ind_a--;
        }
        if (r) outfile<<r;
        for (auto x: a){
            outfile<<x;}
    }
    
    if (ind_b>ind_a){
        for (int j=0;j<a.size();j++){
            r = a[ind_a]+b[ind_b]+r;
            b[ind_b]=r%10;
            r/=10;
            ind_a --;
            ind_b--;
        }
        for (int j=a.size();j<b.size();j++){
            r +=b[ind_b];
            b[ind_b]=r%10;
            r/=10;
            ind_b--;
        }
        if (r) outfile<<r;
        for (auto x: b){
            outfile<<x;}
    }
}
Editor is loading...