https://www.spoj.com/problems/JULKA/
#include <bits/stdc++.h>
using namespace std;
int main(){
int l = 10, n, m;
while(l–){
int apples[102]{-1}, kMore[102]{-1}, ans2[102]{-1}, carry = 0;
char c = ‘a’;
n = m = 0;
c=getchar();
while(c != ‘\n’){
apples[n++] = (c - ‘0’);
c=getchar();
}
c=getchar();
while(c != '\n'){
kMore[m++] = (c - '0');
c=getchar();
}
vector<int> v(n);
for(int i = 0;i < n;i++) v[i] = apples[n - i - 1];
for(int i = 0;i < m;i++){
v[i] = v[i] - kMore[m - i - 1] - carry;
carry = 0;
if(v[i] < 0){
v[i] += 10;
carry = 1;
}
}
v[m] -= carry;
int mod = 0;
for(int i = n - 1;i >= 0;i--){
v[i] = (mod * 10) + v[i];
mod = v[i] % 2;
v[i] = v[i] / 2;
if(i == (n - 1) && v[i] == 0) n--;
}
int r = n > m?n : m;
for(int i = n - 1;i >= 0;i--)
ans2[n - i - 1] = v[i];
for(int i = 0;i < m;i++)
v[i] = v[i] + kMore[m - i - 1];
for(int i = 0;i < r;i++) cout << v[r - i - 1];
cout<<endl;
for(int i = 0;i < n;i++) cout << ans2[i];
cout<<endl;
}
}