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>
#include <cmath>
#include <vector>

template<class T>
T input()
{
	T val, val1;
	std::cin >> val >> val1;
	if (val == '\0')return EOF;
	else			return val+val1;
}

int main()
{
	std::vector<int> x;
	int hoge;
	while ((hoge = input<int>()) != EOF)
	{
		x.push_back(hoge);
	}

	for (int i = 0; i < x.size(); ++i)
		std::cout << static_cast<int>(log10(x[i])) + 1 << std::endl;
	return 0;
}

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;
        else cout << (int)(log10(sum) + 1);
    }
    return 0;
}

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

int main() {
/*	int a[3];
	cin >> a[0] ;
	a[1] = 3;
	a[2] = a[0] * 10;

	cout << a[0] <<" " << a[1] <<" "<< a[2] << endl;
	
	for (int i = 0; i < 3; i++) {
		cout << a[i] << endl;
	}


	sort(a,a+5);
*//*
	int a[10];
	for (int i = 0; i < 10; i++) {
		cin >> a[i];
	}
	
	sort(a,a+10,greater<int>());

	for (int i = 0; i < 3; i++) {
		cout << a[i]<<endl;
	}
*/
	int ans = 0;
	int a, b,c;
	while (true) {
		ans = 0;
		cin >> a >> b;
		c = a + b;

		while (c > 0) {
			c /= 10;
			ans++;
		}cout << ans << endl;
	}
	
	return 0;;
}

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

int main()
{
	int a[200],b[200],sum[200],keta[200],cnt=0,set=3,i=0;

	while( cin >> a[i] >> b[i]) i++;

	for(i=0;i<set;i++){
		sum[i]=a[i]+b[i];
		while(sum[i]!=0){
			sum[i]=sum[i]/10;
			cnt++;
		}
		cout << cnt << endl;
		cnt=0;
	}

	return 0;
}

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

int main() {
	long long a, b;

	while (cin >> a >> b) {
		long long N = a + b;
		int digit = 0;

		while (N) {
			digit++;
			N /= 10;
		}
		cout << digit << endl;
	}
}

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

int get_digit(int num);

int main() {
	int first;
	int second;
	int data_cnt = 0;
	std::vector<int> inputs;

	while ((cin >> first >> second) || (data_cnt < 200)) {
		data_cnt++;
		inputs.push_back(first + second);
	}

	for (int i = 0; i < data_cnt; i++) {
		cout << get_digit(inputs[i]) << endl;
	}

	return 0;
}

int get_digit(int num) {
	return std::to_string(num).length();
}

C++: #include<stdio.h>
#include<string.h>
int main(void){
    int a,b;
    char str[10];
    while(scanf("%d%d",&a,&b) !=EOF){
        sprintf(str,"%d",a+b);
        printf("%d\n",strlen(str));
    }
    return 0;
}

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

using namespace std;

int main()
{
	int a, b;

	while(cin >> a >> b){
		a = a+b; b=0;
		while(true){
			if(a==0){cout << b << endl; break;}
			a=a/10; b++;
		}
	}

	return 0;
}

C++: /*
C++ ???????????????????????????????????¬??????
??????AOJ-ITP1??????????????????
*/
#define _USE_MATH_DEFINES

#include <iostream> // ?¨??????\??????
#include <fstream>  // ??????????????\??????
#include <string>   // ???????????¢???
#include <vector>   // ???????????????
#include <cmath>    // ??°??????
#include <iomanip>  // stream???????????¢???
#include <algorithm>// max??¢??°??????

using std::cin;
using std::cout;
using std::endl;
using std::string;
using std::vector;        // ????´???°????????????????????????
using std::fixed;         // ???????????????????¨???????????????????????????????
using std::setprecision;  // ?????°????°???°?????\???????????°????????????????????¨????????\???

int main() {
	int a, b, c;
	int count;
	while (cin >> a >> b)
	{
		// ??\???
		c = a + b;
		count = 0;

		// ?????°??????
		do
		{
			c = c / 10;
			count++;
			cout << c << endl;
		} while (c > 0);
		cout << count << endl;
	}

	return 0;
}

C++: #include<iostream>
#include<string>
using namespace std;
int main(){
	int a,b;
	int n;
	while(cin>>n){
	cin>>a>>b;
	int i=0;
	int h=a+b;
	while(true){
		if(0==h)
			break;
		i++;
		h/=10;
	}
	cout<<i<<endl;
	}
	return 0;
}

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

int main()
{
	while(true)
	{
		int a, b;
		cin >> a >> b;
		if(cin.eof())
			break;

		char len[10];
		sprintf(len, "%d", a + b);
		string sum(len);
		cout << sum.size() << endl;
	}
	return 0;
}

C++: // ------------------------------------
// Date:2018/ 2/11
// Problem:0002 : DigitNumber 2.cpp
//
// ------------------------------------

#include <stdio.h>
#include <iostream>
#include <string>
#include <vector>
#include <map>
#include <algorithm>
#include <random>

using namespace std;

#define FOR(i,a,b) for(int i=(int)a;i<(int)b;++i)
#define REP(i,n) FOR(i,0,n)

int main()
{
  int a,b,cnt;
  while (scanf("%d %d", &a, &b)) {
    cnt = 0;
    a += b;
    while(a>0) {
      a/=10;
      ++cnt;
    }
    printf("%d\n", cnt);
  }
  return 0;
}

C++: #include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
    int a,b,sum,k;
    while(scanf("%d%d",&a,&b)!=EOF)
    {
        k=a+b;
        sum=0;
        while(k!=0)
        {
            k/=10;
            sum++;
        }
        printf("%d\n",sum);
    }
    return 0;
}

C++: #include<iostream>
using namespace std;
int main(){
	int a,b,c,i;
	while(scanf("%d %d",&a,&b) != EOF){
		c = a + b;
		for(i = 0; c != 0; i++){
			c /= 10;
		}
		cout << i << endl;
	}
	return 0;
}

C++: import sys

for line in sys.stdin:
	a,b=map(int,line.split())
	print(len(str(a+b)))

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

int main()
{
	int a, b, n = 0, wa;
	int countdata[1000];
	while (cin >> a >> b) {
		int count = 0;
		wa = a + b;
		while (wa > 0) {
			wa = wa / 10;
			count++;
		}
		countdata[n] = count;
		n++;
	}
	for (int a = 0; a < n; a++) {
		cout << countdata[a] << endl;
	}
}

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



int main(void){

	int a, b, sum = 0, count;

	for (; 	cin >> a >> b;){//??°????????????????????°?????????
		count = 0;
		sum = a + b;
		if (sum == 0){ cout << 0 << endl; }
		else if (sum != 0){

			while (sum > 9){

				sum /= 10;
				count++;

			}
			//?????°???count?????°
			cout << count + 1 << endl;
		}
	}


	return 0;
}

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

using namespace std;

int main()
{
    int a,b,sum=0;
    while(scanf("%d%d",&a,&b)==2){
        sum=a+b;
        if(sum<10)printf("1\n");
        else if(sum<100)printf("2\n");
        else if(sum<1000)printf("3\n");
        else if(sum<10000)printf("4\n");
        else if(sum<100000)printf("5\n");
        else printf("6\n");
    }
    return 0;
}

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

int main()
{
    int a,b;

    while(cin>>a>>b)
    {
        int x=a+b;
        int cnt = 0;

        while(x)
        {
            cnt++;
            x/=10;        }

        cout<<cnt<<endl;
    }

    return 0;
}

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

int main(){
	
	while(1){
	int a,b,s=0,l;
	char str[100];
	cin >> a >> b;

	s=a+b;
	itoa(s,str,10); // s???10?????°??§??????????????????
	l = strlen(str); // ???????????????????????????
	cout << l << "\n";
	}
}

C++: #include<iostream>
#include<cstdio>
#include<string>
int main(){
    string a, b;
    while(cin >> a){
        cin >> b;
        printf("%d %d\n", a.length(), b.length());
    }
}