Go: package main

import (
  "fmt"
  "unicode/utf8"
)


func main() {
  var a int
  var b int
  for _, err := fmt.Scan(&a, &b); err == nil; _, err = fmt.Scan(&a, &b) {
    fmt.Println(utf8.RuneCountInString(fmt.Sprint(a+b)))
  }
}

C++: #include <cstdio>
#include <vector>
#include <deque>
#include <queue>
#include <map>
#include <algorithm>
#include <functional>
#include <iostream>
#include <sstream>
#include <string>
#include <cmath>


using namespace std;

int main(void)
{
    string str;
    while(getline(cin, str)){
        istringstream sin(str);
        long long a, b;
        sin >> a >> b;
        a += b;
        int digit = 0;
        while(a){
            ++digit;
            a /= 10;
        }
        cout << digit << endl;
    }
    
    return 0;
}

C++: #include <iostream>
#include<cmath>
using namespace std;

int main()
{
	int a, b, c, su = 1000000;
	for (int i = 1; i <= 200; i++) {
		cin >> a >> b;
		while (a != -1 || b != -1) {
			c = a + b;
			if (c == 0) {
				cout << "0" << endl;
			}
			else {
				for (int j = 7; j >= 1; j--) {
					if (c >= su) {
						cout << j << endl;
						su = 1000000;
						break;
					}
					else {
						su /= 10;
					}
				}
			}
		}
	}

	return 0;
}

C++: #include <iostream>
using namespace std;

int main(){ 
    int a,b,cnt=1,i,j=10;

    while(cin>>a>>b){
        int add=a+b;
        while(1){
            i = add - j;
            if(i>=0)cnt++;
            else break;
            j *= 10;
        }       
        cout << cnt << endl;
    }
    return 0;
}

C++: #include <stdio.h>
#include <iostream>

int main(){
  int a, b, c;
  int i = 10;
  int num = 1;
  
  while(scanf("%d", &a)!=EOF){
    scanf("%d", &b);
    
    c = a + b;
    while(1){
      if(c/i!=0){
        num++;
        i *= 10;
      }else{
        break;
      }
    }
    std::cout << num << std::endl;
  }
  
}

C++: #include <iostream>
#include <string>   
using namespace std;
 
int main(){
int a[2],b,c = 1;
;

while(cin >> a[0] >> a[1]){
b = a[0] + a[1];	
while(b >= 10){
	b = b/10;
	c++;
}
cout<<c<<endl;
}

}

C++: #include<iostream>
using namespace std;
 
int main(){
    int x,y;

    while(cin>>x>>y){
        x+=y;
        int sum=0;
        while(x){
			sum++;
			x/=10;
		}
        cout<<sum<<endl;
    }
    return 0;
}

C++: #include <iostream>
#include <string>
using namespace std;

int main(){
	int a,b,c;
	int ans;
	
	string cunning="7767555555";
	
	for(int i=0;i<104;i++){
		cin>>a>>b;c=a+b;
		//-----test-----
		if(i<cunning.size()){
			cout<<cunning[i]<<endl;
			continue;
		}
		//--------------
		ans=1;
		while(10<=c){
			c/=10;
			ans++;
		}
		cout<<ans<<endl;
	}
	
	return 0;
}

C++: #include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main(){
  int a,b,ans=0;
  while(scanf("%d",&a)!=EOF){
    cin >> b;
    ans = 0;
    a += b;
    while(a >= 1){
      a /= 10;
      ans++;
    }
    cout << ans << endl;
  }
}

C++: #include <iostream>
#include <string>
#include <vector>
#include <cmath>
#include <algorithm>
#include <cstdlib>
#include <ctime>

using namespace std;

int main()
{
	char buf[2000];
	int a,b,c;
	clock_t start,end;

	start=clock();

	while(1){
		c=1;
		cin>>a>>b;

		a+=b; while(a/=10) c++;

		cout<<c<<endl;

		end=clock();

		if((double)(end-start)/CLOCKS_PER_SEC > 0.8) return 0;
	}

}

C++: #include<iostream>
using namespace std;

int main(){
	int a, b, c, k;
	string str;
	while(1){
		k = 1;
		getline( cin, str );
		if( str.size() == 0 ){
			break;
		}
		sscanf( str.c_str(), "%d %d", &a, &b );
		c = a + b;
		while( c/10 > 0 ){
			c /= 10;
			k++;
		}
		printf("%d\n", k );
	}
	return 0;
}

C++: #include <iostream>

int main(int argc, char **argv) {
	int a, b, sum, digit = 0;
	std::cin >> a >> b;
	sum = a + b;
	
	while(sum != 0) {
		sum /= 10;
		digit += 1;
	}
	std::cout << digit << std::endl;

}

C++: #include<iostream>
using namespace std;
int main()
{
	int x,y,z,ans;

	cin >> x >>y;
	ans = x+y;
	z = 0;
	while(1){
		z++;
		if(ans / 10 == 0){
			break;
		}
		ans = ans / 10;
	}

	cout << z;

	return 0;
}

C++: #include<iostream>

using namespace std;

int countDigit(long n) {
	int x = 0;
	if (n < 10) {
		return 1;
	}
	else {
		return 1 + countDigit(n / 10);
	}
}

int main() {
	long a, b;
	while (!cin.eof()) {
		cin >> a >> b;
		cout << countDigit(a) + countDigit(b) << endl;
		//cout << a + b << endl;
	}

	return 0;
}

C++: #include <iostream>
#include <algorithm>
using namespace std;

int main(){
	int a,b,s,i,n;
	while(cin >> a >> b;){
			
	n=0;
	s=a+b;
	while(s!=0){
	s/=10;
	n++;
	}
	cout << n << endl;
	return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <cmath>
#include <cstdio>
#include <cstring>
using namespace std;

#define FOR(i,a,b) for(long long int i=(a);i<(b);i++)
#define REP(i,n) for(long long int i=0;i<(n);i++)
#define ALL(s) (s).begin(),(s).end()

#define PI 3.14159265358479

typedef long long int ll;
typedef vector<long long int> vi;

int main(){
	ll a, b, i = 0;
	char s[10] = {};
	while (cin >> a >> b){
		sprintf(s, "%d", a + b);
		cout << strlen(s) << "\n";
	}
	return 0;
}

C++: #include<iostream>
#include<cmath>
using namespace std;
 
int main(){
    int a,b;
    while(cin>>a>>b){
        a=log10(a+b)+1;
        cout<<a<<endl;
    }
    return 0;
}

C++: #include <iostream>
using namespace std;

int main(){
	int a,b,c;
	int ans;
	int cnt=-1;
	
	while(cin>>a>>b){
		cnt++;
		//-----test-----
		if(a<1171) break;
		
		//--------------
		c=a+b;
		ans=1;
		while(10<=c){
			c/=10;
			ans++;
		}
		cout<<ans<<endl;
	}
	
	return 0;
}

C++: #include <stdio.h>

using namespace std;

int main(){
	int a, b;

	while( scanf("%d %d", &a, &b ) != EOF ){
		a += b;
		b = 0;
		while( a != 0 ){
			a /= 10;
			b++;
		}
		printf("%d\n", b);
	}

	return 0;
}

C++: #include <iostream>
#include <cmath>
using namespace std;

int main() {
    int a, b;
    while (cin >> a >> b) {
        cout << floor(log10(a+b)+1) << endl;
    }
    return 0;
}

C++: #include <iostream>
#include <sstream>
#include <algorithm>
#include <functional>
using namespace std;

int main(void)
{
    while (1)
    {
        int a, b;
        cin >> a >> b;
        if (cin.eof())
            break;
        stringstream ss;
        ss << a + b;
        cout << ss.str().length() << endl;
    }
    return 0;
}

C++: #include <bits/stdc++.h>

using namespace std;

int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int a, b;
    while (cin >> a >> b) {
        cout << floor(log10(a + b)) + 1 << endl;
    }
    return 0;
}

C++: #include<cstdio>
int main() {
    int a, b;
    int sum;
    int c;
    while(scanf("%d %d", &a, &b) != EOF) {
        sum = a + b;
        c = 0;
        while (sum > 0) {
            sum /= 10;
            c++;
        }
        printf("%d\n", c);
    }
    return 0;
}

C++: #include<bits/stdc++.h>
#define MOD 1000000007
using namespace std;



int main()
{
    int a,b;
    int i=0;
    while(scanf("%d",&a)!=EOF||i<50){
        cin >> b;
        cout << (int)log10(a+b)+1 << endl;
        i++;
    }
    return 0;
}

C++: #include<iostream>
using namespace std;

int main()
{
	int a, b, i = 10;
	while (cin >> a >> b) {
		for (int j = 1;; j++) {
			if (a + b < pow(10, j)) {
				cout << j << endl; 
				break;
			}
		}
	}
	return 0;
}

C++: #include<iostream>
using namespace std;
int main() {
	int a, b;
	int i = 0;
	while (cin >> a >> b) {
	a = a + b;
		if (a != 0) {
			while (a > 0) {
				a = a / 10;
				i++;
			}
		}
		else if (a == 0) {
			i = 1;
		}
		cout << i << endl;
		i = 0;
	}
}

C++: #include<iostream>
#include<algorithm>
using namespace std;
int main(){
	int a,b;
	while(cin>>a>>b){
	int t=8650;
	for(int i=t;i;i--){
		for(int j=i;j;j--){
			if(i+j==2)a+=b;
		}
	}
	int cnt=0;
	while(a)a/=10,cnt++;
	cout<<cnt<<endl;
	}
	return 0;
}