Go: // 九九を出すだけ
package main
import (
	"fmt"
	"os"
	"bufio"
	"strconv"
)

var sc = bufio.NewScanner(os.Stdin)
var out = bufio.NewWriter(os.Stdout)

func main(){
	sc.Split(bufio.ScanWords)
	defer out.Flush()
	for sc.Scan(){
	    s := nextIntIs()
	    sc.Scan()
	    t := nextIntIs()
        a := len(strconv.Itoa(s+t))
	    fmt.Fprintln(out, a)
	}
}

func next() string{
	sc.Scan()
	return sc.Text()
}

func nextInt() int{
	a, _ := strconv.Atoi(next())
	return a
}

func nextIntIs() int{
	a, _ := strconv.Atoi(sc.Text())
	return a
}

C++: #include<iostream>

using namespace std;
int main()
{
	int a, b;
	while (cin>>a>>b)
	{
		char s[7];
		sprintf_s(s, "%d", a + b);
		cout << strlen(s) << endl;
	}


	return 0;
}

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


using namespace std;

int main()
{
	
	int a,b;
	string input;
	int size[3];
	int i = 0;
	int count = 0;	
	//cout << "input two numbers" << endl;
	for(i=0;i<200;i++){
	cin >> a >> b;
	b += a;
	input = to_string(b);
	size[i] = input.size();	
	count++;
}
for(i=0;i < count;i++){
	cout << size[i] << endl;
}

}

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

using namespace std;

int main (void) {
    int a, b, sum;
    while (1) {
        cin >> a;
        cin >> b;
        if (cin.eof()) break;
        sum = a + b;
        if (sum == 0) cout << 1 << endl;
        else cout << (int)(log10(sum) + 1) << endl;
    }
    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(cnt==0){cout<<5<<endl;continue;}
		
		//--------------
		c=a+b;
		ans=1;
		while(10<=c){
			c/=10;
			ans++;
		}
		cout<<ans<<endl;
	}
	
	return 0;
}

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

int main()
{


	int a, b;
	while (cin >> a >> b) {
		stringstream ss;
		string sum;
		ss << a + b;
		sum = ss.str();

		cout << sum.size() << endl;
	}

	return 0;
}

C++: #include<cstdio>
#include <cstdlib>
#include<iostream>
#include<cstring> // ??????????????????????±???????????????????
using namespace std;

int main(){
	int a,b,s=0,l;
	while( cin >> a >> b  ){
		char str[100];
		s=a+b;
		itoa(s,str,10); // s???10?????°??§??????????????????
		l = strlen(str); // ???????????????????????????
		cout << l << "\n";
	}
	return 0;
}

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

int main(){
    int a,b;
    while(true){
        int sum,digit;
        a=-1;
        digit = 0;
        
        cin >> a >> b;
        
        if(a == -1){
            break;
        }
        
        sum = a + b;
        
        while(true){
            if(sum != 0){
                sum /= 10;
                digit++;
            }
            else{
                break;
            }
        }
        
        cout << digit << endl;
    }
    return 0;
}

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

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

C++: #include <iostream>
using namespace std;
unsigned short digitsofnum(unsigned short n) {
	int j = 0;
	while (n > 0) {
		n = n / 10;
		j++;
	}
	return j;
}
int main()
{
	unsigned short a, b;
	vector<unsigned short> dst;
	while (cin >> a >> b)
		cout <<digitsofnum(a + b) << endl;
	return 0;
}

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

int c = 0;

void keta(int C) {
	if (C > 9) {
		c++;
		keta(C/10);
	}
	return;
}

int main()
{
	while (1) {
		if (cin.eof()) {
			break;
		}
		c = 0;
		int A, B,C;
		cin >> A>> B;
		C = A + B;
		keta(C);
		c++;
		cout << c<<endl;
	}
    return 0;
}

C++: #include <stdio.h>

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

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

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

int main(){
	int a,b;

	while(scanf("%d %d",&a,&b) !=EOF){
	
		int tag = (a+b)/1000000;
		int keta = 7;
		if(tag==0){
			tag = (a+b)/100000;
			keta = 6;
		}
		if(tag==0){
			tag = (a+b)/10000;
			keta = 5;
		}
		if(tag==0){
			tag = (a+b)/1000;
			keta = 4;
		}
		if(tag==0){
			tag = (a+b)/100;
			keta = 3;
		}
		if(tag==0){
			tag = (a+b)/10;
			keta = 2;
		}
		if(tag==0){
			tag = (a+b)/1;
			keta = 1;
		}

		cout << keta << endl;
	}
	
	return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
	int a[2];
	while(cin>>a[0]>>a[1]){
	int sum=a[0]+a[1];
	int  i=0;
	while(1){
		i++;
	if(sum>=0&&9>=sum)break;
	sum/=10;
	}
	cout<< i<<endl;
	}
	return 0;
}

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

int main()
{
	int a,b,c,d=1000000;
	cin>>a>>b;
	
	for(int i=1;i<=200;i++){
		a+=b;
		short answer=7;
		while(1){
			if(a/d==0){
				answer--;
			        d/=10;
			}
			else{
				cout<<answer<<endl;
				break;
			}
		}
		d=1000000;
		answer=7;
		cin>>a>>b;
	}
	return 0;
}