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 <iostream>
#include <stdio.h>
using namespace std;
 
int main(){
int a,b;
	cin>> a>> b;
	if(a+b<10){
		cout<< "1"<<endl;
	}
	else if(10<=a+b && a+b<100){
		cout<< "2"<<endl;
	}
	else if(100<=a+b && a+b<1000){
		cout<< "3"<<endl;
	}
	else if(1000<=a+b && a+b<10000){
		cout<< "4"<<endl;
	}
	else if(10000<=a+b && a+b<100000){
		cout<< "5"<<endl;
	}
	else if(100000<=a+b && a+b<1000000){
		cout<< "6"<<endl;
	}
	else if(1000000<=a+b){
		cout<< "7"<<endl;
	}
	return 0;
}

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

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

C++: //
//  main.cpp
//  b
//
//  Created by h3037178 on 2017/07/31.
//  Copyright ?? 2017??´ ?????£?????????. All rights reserved.
//

#include <iostream>
#include <algorithm>
using namespace std;
int main(){
    int i,o,b=0,f;
    for(int p=0;p<200;p++){
        cin>>i>>o;
        b=0;
        f=i+o;
        if(f<=0){
            break;
        }
        for(int j=1;j<=1000000;j=j*10){
            if(i+o>=j){
                b++;
            }else{
                break;
            }
        }
        cout<<b<<endl;
        }
}

C++: #include <iostream>
#include <cmath>

template<class T>
T input()
{
	T val;
	std::cin >> val;
	return val;
}

int main()
{
	while (true)
	{
		int hoge = input<int>() + input<int>();
		std::cout << static_cast<int>(log10(hoge)) + 1 << std::endl;
	}

	return 0;
}

C++: 
#include <stdio.h>
#include <stdlib.h>
#include <iostream>
#include <vector>
#include <string>
#include <queue>
#include <algorithm>
#include <math.h>
#include <utility>
#include <set>
#include <map>
#define INF 100000
using namespace std;

int dig(int n){
    int ans =0;
    while (n>0) {
        n/=10;
        ans++;
    }
    return ans;
}

int main(){
    int a,b;
    while (cin >> a and cin >>b) {
        cout << dig(a+b)<<endl;
    }
}

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

int main(){
	int a, b, sum;

	while(1){
		cin >> a >> b;
		if(cin.eof()){
			break;
		}

		sum = a + b;

		for(int i=1; ; ++i){
			if(sum<10){
				cout << i << endl;
				break;
			}else{
				sum /= 10;
			}
		}
	}

	return 0;
}

C++: #include <iostream>
#include <string>
#include <vector>

using namespace std;

static int count_digit(const int a, const int b) {
	return to_string(a + b).length();
}

int main(void) {
	int a, b;
	while(cin >> a){
		cin >> b;
		cout << count_digit(a, b) << endl;
	}
	return 0;
}

C++: #include <stdio.h>

int main()
{
	int a,b;

	while(1)
	{
		int kai;
		int i = 1;
		int j = scanf("%d %d" , &a,&b);
		if(j==EOF) break;

		kai = a+b;

		while(kai > 9)
		{
			kai /= 10;
			i++;
		}

		printf("%d\n" , i);
	}
}

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

int main() {
	int a,b,c;
	while(cin>>a>>b){
		c=a+b;
			if(c<10){
				cout<<"1\n";
			}
			else if(c>9&&c<100){
				cout<<"2\n";
			}
			else if(c>99&&c<1000){
				cout<<"3\n";
			}
			else if(c>999&&c<10000){
				cout<<"4\n";
			}
			else if(c>9999&&c<100000){
				cout<<"5\n";
			}
			else if(c>99999&&c<1000000){
				cout<<"6\n";
			}
			else{
				cout<<"7\n";
			}
	}
}

C++: #include<iostream>
#include<vector>
#include<algorithm>
#include<string>

#define add push_back
#define inf 2147000000

#define rep(i,n) for(int i=0;i<n;i++)

using namespace std;

int main(void){
	int a,b;
	while(scanf("%d",&a)!=EOF){
	scanf("%d",&b);
	
	a+=b;
	int i=0;
	int flg=0;
	if(a==0)flg=-1;
	for(i=0;a>=10;i++){
		a/=10;
	}
	i+=flg;
	cout<<i+1<<endl;
	}
}

C++: #include <iostream>
#include <algorithm>
#include <cstdio>
#include <string>

using namespace std;

int main(){
	int a, b, c, s;
	while(cin >> a >> b){
		c = 1;
		s = a + b;
		while(s = s / 10, s){
			c++;
		}
		cout << c << "\n";
	}
	return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
  int a,b;
  while(cin >>a>>b){
    int x=0;
    for(int c=a+b; c>0; x++){
      c = c/10;
    }
    cout <<x<<endl;
  }
  return 0;
}

C++: #include "bits/stdc++.h"
using namespace std;
int main(){
    int a, b;
    int sum;
    string ans;
    while(cin >> a >> b){
        sum = a + b;
        ans = to_string(sum);
        cout << ans.size() << endl;
    }     
    return 0;
}

C++: #include <iostream>

using namespace std;
int main(){
	int a, b, i = 1, s;
	
	cin >> a >> b;
	s = a + b;
	
	while(s > 10){
		s = s / 10;
		i++;
	}
	
	cout << i;
	return 0;
}

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

int main() {
	int a,b;
	while(scanf("%d %d", &a, &b) != EOF) {
		int total=a+b,ans=1;
		while(total>10) {
			total/=10;
			++ans;
		}
		printf("%d\n",ans);
	}
}

C++: #include<cstdio>

int main(){
int a,b;
 while(scanf("%d%d",&a,&b)){
 printf("%d\n",a+b);
}
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<cstdio>
#include<iostream>
using namespace std;
int main()
{
	int a,b,c,k,s;
	while(cin>>a>>b)
	{
		k=a+b;
		s=0;
		while(k!=0)
		{
			k=k/10;
			s++;
		}
		cout<<s<<endl;
	}
	return 0;
}

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

int main(){
	int a, b;
	while(true){
		cin >> a >> b;
		stringstream ss;
		ss << a+b;
		cout << ss.str().size() << endl;
	}
}

C++: #include<stdio.h>
int main(){
    int a,b,c,d;
    int i;

    while(1){
            scanf("%d %d",&a,&b);
    c = a + b;
        for(i = 1;i < 6546;i++){
            c = c / 10;
            i++;
            if(c < 10)break;
        }
    printf("%d\n",i);
    }
    return 0;

}

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

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

C++: #include<string>
#include<algorithm>
#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
	int a,b;
	cin >> a>>b;
string ss="";
  ss >> a+b;
cout<<ss.str().size()<<endl;
return 0;
}

C++: #include <bits/stdc++.h>
using namespace std;
typedef long long LL;
#define REP(i,N) for(int i = 0; i < (int)N; i++)

int main(){
	int a,b;
	while(cin >> a >> b){
		int c=a+b;
		if(c==0){
			cout << 0 << endl;
			continue;
		}
		int count = 1;
		while(c >= 10){
			c/=10;
			count++;
		}
		cout << count << endl;
	}
	return 0;
}

C++: #include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <cstdlib>
#include <stack>
#include <queue>
#include <list>
#include <vector>
#include <sstream>

using namespace std;

class c_main
{
private:
    
public:
    c_main();
    void f_input();
    int f_digit(int sum);
};

int c_main::f_digit(int sum){
    int digit=0;
    while(sum!=0){
        sum /= 10;
        digit++;
    }
    return digit;
}

c_main::c_main()
{
    int a,b;
    int cnt;
    
    cnt = 0;
    
    for (;cin >> a >> b;){
        cout << f_digit(a+b) << endl;
    }
}

void c_main::f_input()
{
    
}

int main(){
    c_main main01;
    main01.f_input();
    
    return 0;
}

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

int main(){
    int a, b;
    while(cin >> a >> b){
        int v = a + b;
        int ans = 0;
        while(v){
            v /= 10;
            ++ans;
        }

        cout << ans << endl;
    }

    return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;
int main(){
    cin.tie(0);
    ios::sync_with_stdio(false);
    int x,y;
    for(;;){
        cin >> x >> y;
        if(cin.eof())   break;
        cout << to_string(x+y).length() << "\n";
    }
}