CSES - E4590 2016 2 - Results
Submission details
Task:ModAdd
Sender:HopeICanCode
Submission time:2016-09-24 13:58:54 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.06 sdetails
#2ACCEPTED0.08 sdetails
#3ACCEPTED0.08 sdetails
#4ACCEPTED0.08 sdetails
#5ACCEPTED0.09 sdetails
#6ACCEPTED0.09 sdetails
#7ACCEPTED0.09 sdetails
#8ACCEPTED0.06 sdetails
#9ACCEPTED0.08 sdetails
#10ACCEPTED0.08 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:16:43: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i = 0; i < min(A.size(), B.size()); ++i){
                                           ^
input/code.cpp:21:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int j = min(A.size(), B.size()); j < A.size(); ++j) ans.push_back(A[j] - '0');
                                                  ^
input/code.cpp:22:50: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int j = min(A.size(), B.size()); j < B.size(); ++j) ans.push_back(B[j] - '0');
                                                  ^

Code

#include <bits/stdc++.h>
#define UNVISITED -1
#define BIGINT 1 << 25
#define _ ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0), cout.precision(15);
using namespace std;

typedef long long int64;
typedef pair<int, int> ii;

int main(){ _
	string A, B;	cin >> A >> B;
	reverse(A.begin(), A.end());
	reverse(B.begin(), B.end());
	
	vector<int> ans;
	for(int i = 0; i < min(A.size(), B.size()); ++i){
		int sum = (A[i] - '0') + (B[i] - '0');
		ans.push_back(sum % 10); 
	}
	
	for(int j = min(A.size(), B.size()); j < A.size(); ++j)	ans.push_back(A[j] - '0');
	for(int j = min(A.size(), B.size()); j < B.size(); ++j)	ans.push_back(B[j] - '0');
	
	for(int i = ans.size() - 1; i > 0; --i)	
		if(ans[i] == 0)	ans.pop_back();
		else	break;
		
	for(int i = ans.size() - 1; i >= 0; --i)
		cout << ans[i];
	cout << endl;
		
    return 0;
}

Test details

Test 1

Verdict: ACCEPTED

input
3797629225
9766508989

correct output
2453127104

user output
2453127104

Test 2

Verdict: ACCEPTED

input
552139016901047883384892240490...

correct output
552139016901047883384892240490...

user output
552139016901047883384892240490...

Test 3

Verdict: ACCEPTED

input
860793811134668093345482099582...

correct output
487710306894083216377653715430...

user output
487710306894083216377653715430...

Test 4

Verdict: ACCEPTED

input
2
870841652294197226626825161089...

correct output
870841652294197226626825161089...

user output
870841652294197226626825161089...

Test 5

Verdict: ACCEPTED

input
0
404905566051213252279994991040...

correct output
404905566051213252279994991040...

user output
404905566051213252279994991040...

Test 6

Verdict: ACCEPTED

input
430112167406460960088878635088...

correct output
430112167406460960088878635088...

user output
430112167406460960088878635088...

Test 7

Verdict: ACCEPTED

input
867016005819001635643395991596...

correct output
999999999999999999999999999999...

user output
999999999999999999999999999999...

Test 8

Verdict: ACCEPTED

input
120453771521975552204976752778...

correct output
0

user output
0

Test 9

Verdict: ACCEPTED

input
239979749009277805816504910098...

correct output
239979749009277805816504910098...

user output
239979749009277805816504910098...

Test 10

Verdict: ACCEPTED

input
990963963634143754324162574923...

correct output
818540385713473048971388312665...

user output
818540385713473048971388312665...