semeru/Code-Code-CloneDetection-POJ104 huggingface dataset:
void main()
{
	char ch[1000000];
	void f(char *p,int n);
		int m;
	gets(ch);
    m=strlen(ch);
	f(ch,m);
	
}
void f(char *p,int n)
{
	int i,j,k=0;
	j=0;
    for(i=0;i<n;i++)
	{
		
		if(*(p+i)!=' ')
			j++;

		else 
		{
			if(j!=0)
			printf("%d,",j);
			j=0;
		}
			
	}
	for(i=n-1;i>-1;i--)
		if(*(p+i)!=' ')
			k++;
		else
			break;
		if(k!=0)
		printf("%d",k);
	

}
int main()
{
	char s[100000],*p;
	gets(s);
	p=s;
	int num[300]={0},i=0,k=0,m=0;
	while(*p!='\0')
	{
		if(*p!=' ')
		{
			num[i]=num[i]+1;
			k=1;
		}
		else if(*p==' '&&k==1)
		{
			i=i+1;
			k=0;
			m=i;
		}
		p=p+1;
	}
	for(i=0;i<m;i++)
	    printf("%d,",num[i]);
	printf("%d",num[m]);
return 0;
}
int main(int argc, char* argv[])
{
	char e[50];
	int a;
	scanf("%s",e);
	printf("%d",strlen(e));
	while(scanf("%s",e) == 1){
		printf(",%d",strlen(e));
	}
	return 0;
}
int main()
{   char c;
    int check=0,i=0,m,flag=0;
	while((c=getchar())!='\n'){
		
		if(c!=' ') {i++;flag=1;m=i;}
		else  if(flag==1) { flag=0;
			if(check==0)
		   {printf("%d",i);check=1;}
	       else printf(",%d",i);
	       i=0;
	   }
    
	 }
   if(flag==1&&check==1)
	printf(",%d",m);
 //????????????????????
	//??????????????????check
	//???????????check==0??????????
	if(flag==1&&check==0)
		printf("%d",m);
  

	return 0;

}
void main()
{
	char s;
	
	int i=0,m;
	while((s=getchar())!='\n')
	{
		if(s!=' ')
		{
		i++;
		}
		else if(i>0)
		{
		printf("%d,",i);
		i=0;
		}
	}
	printf("%d",i);
	
}
int main()
{
    int i,j,k,mark,flag,len;
    int Len[300];
    char sen[999];
    
    i=0;
    j=0;
    k=0;
    flag=1;
    mark=0;
    gets(sen);
 
    
  

    for(i=0;i<999;i++)
    {
     if(sen[i]==' '&&flag==1)
      {
      flag=0;
      Len[j]=i-mark;
      mark=i+1;
      j++;
      }
      
     else if(sen[i]==' '&&flag==0)          
       mark++;
   
     else if(sen[i]!=' '&&sen[i]!='\0')
      flag=1;
      
     else if(sen[i]=='\0')
      {
      Len[j]=i-mark;
      break;
      }
     }
     
     for(k=0;k<j;k++)
      printf("%d,",Len[k]);
     printf("%d",Len[j]);
}
int main(){
	char a[10000],d[200][50];
	int n=0,k=0,i,j,l,t;
	gets(a);
	l=strlen(a);
	for(i=0;i<l;i++){
		if(a[i]!=' '){
			d[n][k]=a[i];
			k++;}
		else {
			if(a[i-1]!=' '){
				n++;
				k=0;}}}
	n++;
	for(i=0;i<n-1;i++){
		t=strlen(d[i]);
		printf("%d,",t);}
		
	t=strlen(d[n-1]);
	printf("%d",t);
        return 0;
}
int main ()
{
    char s[100000];
	char d[1000][100];
	int i,m,n,j,p;
	int r[1000]={0};
	gets(s);
	m=0;
	n=0;
	i=0;
	p=strlen(s);
    while (s[i]!='\0'){
		j=0;
		for (;s[i]!=' '&&s[i]!='\0';i++,j++)
		{
			d[m][j]=s[i];
			r[m]++;
		}
		if(s[i]=='\0')
		{
			break;
		}
		d[m][j]='\0';
        m++;
		n++;
		i++;
	}
	d[m][j]='\0';
	for (i=0;i<m;i++){
		if (r[i]!=0){
		  printf("%d,",r[i]);
		}
	}
	printf("%d",r[m]);
	return 0;
}
void main()
{
char a[300][20];
int i,len[300],l;
for(i=0;scanf("%s",a[i])!=EOF;i++)
len[i]=strlen(a[i]);
l=i;
for(i=0;i<l;i++)
{
	printf("%d",len[i]);
	if(i!=l-1)
	printf(",");
	}
printf("\n");
}
int main()
{
	int n,i=0;
	char a[10000],*p;
	gets(a);
	n=strlen(a);
	for(p=a;p<a+n;p++)
	{
		if(*p==' ')
		{
			if(i!=0)printf("%d,",i);
			i=0;
		}
		else i++;
		if(p==a+n-1)break;
	}
	printf("%d",i);
}
int main()
{
char a[300][50]={'0'};
char b;
int max=0,min=0,i;
for(i=0;;i++)
{
scanf("%s",a[i]);
scanf("%c",&b);
if(b==10)
break;
}
printf("%d", strlen(a[0]));
for(i=1;i<300;i++)
{
if(strlen(a[i])!=0)
printf(",%d", strlen(a[i]));
else break;
}
return 0;
}
void main()
{
	char *temp,s[1000];
	int p=0;
	gets(s);
	temp=s;
	for(temp=s;*temp!='\0';temp++)
	{
		if(*temp==' ') {if(p>0) printf("%d,",p);p=0;}
		else p++;
	}
	printf("%d",p);
}
int main()
{
	int len;
	char word[30];
	cin >> word;
	len = strlen(word);
	cout << len;
	while(cin >> word)
	{
		len = strlen(word);
		cout << "," << len;
	}
	cout << endl;
	return 0;
}
int main(int argc, char *argv[])
{
  int m,i,a[310]={0},e;
  char s[1000];
  gets(s);
  m=strlen(s);
  e=0;
a[0]=-1;
  for(i=0;i<m;i++)
  {
                  if(s[i]==32)
                  {
                              
                              e++;
                              a[e]=i;
                              
                  }
  }
  
  for(i=1;i<=e;i++)
  {
               if(a[i]-a[i-1]-1!=0)
               printf("%d,",a[i]-a[i-1]-1);
  }
  printf("%d",m-1-a[e]);
                              

  return 0;
}
void main()
{
	char str[3000];
	int a[300],i=0,j,flag=0,n;
	gets(str);
	for(i=0;i<300;i++)
		a[i]=0;
	i=0;
	for(j=-1;;)
	{
		j++;
		if(str[j]=='\0')break;
		else if(str[j]==' ')
			flag=1;
		else
		{
			if(flag==0)
				a[i]++;
			else
			{	i++;
			n=i;
			a[i]++;
			flag=0;
			}
			    
		}
	}
	if(j==1)
		printf("%d",a[0]);
	else
	{
		printf("%d",a[0]);
		for(i=1;i<=n;i++)
		printf(",%d",a[i]);
	}
}
int main()
{
	char s[100000],*p;
	p=s;
	gets(p);
	int num[300]={0},*q,i,j=0,k=0,m=0;
	q=num;
	for(i=0;*(p+i)!='\0';i++)
	{
		if(*(p+i)!=' ')
		{
			*(q+k)=*(q+k)+1;
			j=1;
		}
		else if(*(p+i)==' '&&j==1)
		{
			k=k+1;
			j=0;
			m=k;
		}
	}
	if(m==0) printf("%d",*q);
	else
	{
		for(i=0;i<m;i++)
			printf("%d,",*(q+i));
		printf("%d",*(q+m));
	}
return 0;
}
void main()
{
char str[10000],*p;
int num=0;
gets(str);
for(p=str;*p!='\0';p++)
   {if(*p!=' ')
    num=num+1;
    else if(*p=' ' && num!=0)
	 {printf("%d,",num);
	  num=0;
	 }
	}
    printf("%d",num);
}
void main()
{char str[9999];
long i,k,j,a[400];
gets(str);

j=0;
i=0; 
k=0;
while(str[i]!='\0')
{
   if(str[i]==' ')
     {
        while(str[i+1]==' ')
        {i++;}
        printf("%d,",a[j]),j++,k=0,i++;
      }
  else 
      i++,k++,a[j]=k;
}
printf("%d",a[j]);

}
int main(int argc, char* argv[])
{
 char a[300][50],s[1000];
  gets(s);
  int i,l[300]={0},g=0;
  for(i=0;i<strlen(s);i++)
  {
	  if(s[i]==' '&&s[i-1]!=' ')
   g++;
  }
  g=g+1;
  int j=1;
  for(i=0;i<strlen(s);i++)
  {
    if(s[i]!=' ')
    {l[j]++;}
    else  
	if(s[i+1]!=' ')
	{j++;}
   }
  for(i=1;i<g;i++)
  {
   printf("%d,",l[i]);
  }
  printf("%d",l[g]);


   return 0;
}
void main()
{
	char a[30000];
	int b[300]={0},n,i,j=0,k=0;
	gets(a);
	n=strlen(a);
	for(i=0;i<n;i++)
	{
		if(a[i]!=' '&&k==0)
			b[j]=b[j]+1;
		else if(a[i]==' '&&k==0)
		{
			j++;
			k=1;
		}
		else if(a[i]!=' '&&k==1)
		{
			k=0;
			b[j]=b[j]+1;
		}
	}
	if(b[j]==0)
		j=j-1;
	if(a[0]==' ')
	{
		for(i=1;i<=j-1;i++)
			printf("%d,",b[i]);
		printf("%d",b[j]);
	}
	else
	{
		for(i=0;i<=j-1;i++)
			printf("%d,",b[i]);
		printf("%d",b[j]);
	}
}
int main()
{
    char s[1000],word[300];
    int i,n,j=0,m,k,ch;
    gets(s);
    n=strlen(s);
    for(i=0;i<=n;i++){
        if(s[i]!=' '&&s[i]!='\0'){
           word[j]=s[i];
           j++;
           word[j]='\0';
           }
        else if(s[i]==' '&&s[i-1]!=' '){
           ch=strlen(word);
           printf("%d,",ch);
           j=0;
           for(k=0;k<100;k++){
             word[k]='\0';
             }
           }
        else if(s[i]=='\0'){
           ch=strlen(word);
           printf("%d",ch);
           }
        }
    scanf("%d",&m);
    return 0;
}
void main()
{
	int i,j=0,J;
	char c;
	int l[300];
	c=getchar();
	while(c!='\n')
	{
		for(i=0;c!=' ';)
		{
			i++;
			c=getchar();
			if (c=='\n') break;
		}
		l[j]=i;
		if(l[j]==0)
			j--;
		if(c=='\n')
			break;
		else
		{
	        j++;
	  c=getchar();}
	}
	J=j;
	printf("%d",l[0]);
	for(j=1;j<=J;j++)
		printf(",%d",l[j]);


}
int main(){
    char a[1000];
    gets(a);
    int f;
    int b;
    int d=0;
    //int f=1;
    int c[300];
    int e[300];
    f=strlen(a);
    for(int i=0;i<=f-1;i++){
            if(a[i]==' '&&a[i+1]==' '){
                      for(int j=i+1;j<=f-2;j++){
                              a[j]=a[j+1];
                              }
                              f--;
                              i--;}
                              
                              }
  //  printf("%s",a);
     b=f;
    for(int i=0;i<=b-1;i++){
           if(a[i]==' '){
                      c[d]=i;
                      d++;} }
    d--;
    if(d<0){
            printf("%d",f);}
    else{e[0]=c[0];
    for(int i=1;i<=d;i++){
            e[i]=c[i]-c[i-1]-1;
            }
    e[d+1]=b-c[d]-1;
    for(int i=0;i<=d;i++){
            printf("%d,",e[i]);}
    printf("%d",e[d+1]);}
    int y;
    scanf("%d",&y);
    return 0;}
main()
{
	int n,i,t=0;
	char s[6000];
	gets(s);
	n=strlen(s)-1;//printf("%d\n",n);
	for(i=0;i<=n;i++)
	{
		if(s[i]!=' '&&i!=n)t++;
		else if(s[i]==' '&&t!=0){printf("%d",t);t=0;}
		if(i==n)printf("%d",t+1);
		if(i!=n&&t==0&&s[i-1]!=' ')printf(",");
	}

}
int main()
{
	char a[10000];
	int i,len=0;
	gets(a);
	for(i=0;a[i]!='\0';i++){
        if(a[i]!=' '){
            len++;
		}
		else {
			if(len!=0){
			printf("%d,",len);
            len=0;
		}}
	}
	printf("%d",len);
	return 0;
}
int main()
{int s,i,j,k,l,b[1000];
char str[10000];

	s=0;
	gets(str);
	l=strlen(str);
	str[l]=' ';
	str[l+1]='\0';

	
	for(i=0;i<l;i++)
	{
		if(str[i]!=' ')
		{
			j=i;
			for(k=j+1;k<=l;k++)
				if(str[k]==' ')
				{
					s=s+1;
					b[s]=k-j;
					i=k;
					break;
				
				}
		}
	}
	printf("%d",b[1]);
	for(i=2;i<=s;i++)
		printf(",%d",b[i]);
}
void main()
{
	char str[10000];
	int a[512]={0};
	int n,i,j=0;
	gets(str);
	for(i=0;str[i]!='\0';i++)
	{
		if(str[i]!=' '&&str[i+1]!=' ')
			a[j]=a[j]+1;
		else if(str[i]!=' '&&str[i+1]==' '||str[i]!=' '&&str[i+1]=='\0')
		{
			a[j]=a[j]+1;
			j=j+1;
		}
	}
	n=j+1;
	for(j=0;j<n-1;j++)
		printf("%d,",a[j]);
	printf("%d",a[j]);
}
int main()
{
	char a[1000];
	int num[300]={0},j=0,x;
	gets(a);
	int len=strlen(a);
	for(int i=0;i<len;i++)
	{
		if(a[i]!=' '&&i!=len-1)
		{
			num[j]++;
		}
		else if(a[i]==' '&&i!=len-1)
		{
			j++;
		}
		else if(i=len-1)
		{
			x=j;
		}

	}
	for(j=0;j<x;j++)
	{
		if(num[j]!=0)
		{
		    printf("%d,",num[j]);
		}
	}
	printf("%d",num[x]+1);
	return 0;
}
void main()
{
	int a[300]={0},len=0,i=0,flag=1,j;
	char c;
	while((c=getchar())!='\n')
	{
		if(c!=' ')
			if(flag)
			{flag=0;len++;}
			else len++;
		else if(flag==0){flag=1;a[i]=len;len=0;i++;}
	}
	a[i]=len;
	for(j=0;j<i;j++)
		printf("%d,",a[j]);
	printf("%d\n",a[j]);
}
int main()
{
char s[1000];
char *pr[200];
int i,k, n = 0;
gets(s);

	pr[n++] = s;
	for (i=0,k=1; s[i]; i=i+k,k=1) {
	
		if (s[i] == ' '){
		s[i] = 0;
			for(;s[i+k] == ' ';k++){		
			}
		
        pr[n++] = s+i+k;
	
		}
	}
for (i=0; i<n; i++) {
if (i > 0) {
printf(",");
}

printf("%d", strlen(pr[i]));


}
return 0;
}
int main()
{
	char a[100];
	int n=0,t=0;
	scanf("%s",a);
	printf("%d",strlen(a));
	while(scanf("%s",a)!=EOF)
	{
		printf(",%d",strlen(a));
	}
	return 0;
}
main()
{
  int i,n,sum=0;
  char a[10000];
  gets(a);
  n=strlen(a);
  for(i=0;i<n;i++)
  { 
    if(a[i]!=' ')
    {
      sum=sum+1;
      continue;
    }
    else if(a[i]==' '&&a[i-1]!=' ')
    {
      printf("%d,",sum); 
      sum=0;
    }
    else continue;
  }
  printf("%d",sum);
}
int main(){
 char a[100000];
 int i=-1,j,k=0,b[100000];
 gets(a);
 while(1){
   j=0;
   for(i++;((a[i]!=' ')&&(a[i]!='\0'));i++){
     j++;
  }
   b[k]=j;
   k++;
   if(a[i]=='\0'){
   break;
  }else if(a[i+1]==' '){
   while(1){
   i++;
   if(a[i+1]!=' '){
     break;
     }
    }
  }
 }
 for(i=0;i<k-1;i++){
   printf("%d,",b[i]);
 }
 printf("%d",b[k-1]);
 return 0;
}
int main()
{
	char string[5000];
	int i,num=0,n;
	char c;
	gets(string);
	n=strlen(string);
	for(i=0;i<=n-1;i++)
	{
		if((c=string[i])!=' ')
		num=num+1;
		else
		{
		    if(num!=0)
			{printf("%d,",num);
			num=0;}
		}

	}	
    printf("%d",num);
}
int main()
{
	char a[2000],b[2000];
	gets(a);
    int i,j,k,c[300],l;
	i=0;
	j=0;
	k=0;
	while(a[i]!='\0')
	{
		while(a[i]!=' ')
		{
		    while(a[i]!=' '&&a[i]!='\0')
			{
			     b[j]=a[i];
			     j++;
			     i++;
			}
		    b[j]='\0';
		    c[k]=strlen(b);
			k++;
			if(a[i]=='\0')
			{
				for(l=0;l<=k-2;l++)
				{
					printf("%d,",c[l]);
				}
				printf("%d\n",c[k-1]);
				return 0;
			}
			i++;
			while(a[i]==' ')
			{
				i++;
			}
		    j=0;
		}
	
		i++;
	}
	
	return 0;

}
int main()
{
 char zfc[1000],zsz[1000][1000];
 gets(zfc);
 int word_i = 0, word_j = 0;
 int i,n;
 n=strlen(zfc);
 for(i=0;i<n;i++){
  if (zfc[i] == ' ') {
   
   zsz[word_i][word_j] = '\0';
   word_j=0;
   word_i++;
  } else {
   zsz[word_i][word_j] = zfc[i];
   word_j++;
   if (i == n-1) {
    zsz[word_i][word_j] = '\0';
    word_i++;
   }
  }
 }

 int l[1000],j;
 for(j=0;j<word_i;j++){
  l[j]=strlen(zsz[j]);
  if(l[j]!=0){
   if(j!=0){
    printf(",%d",l[j]);
   }
      else {
       printf("%d",l[j]);
   }
  }
 }
    return 0;
}
int main()
{
	int i=0,num=0,l=0,temp=0;
	char words[LEN];
	gets(words);
	l=strlen(words);
	for(i=0;i<l;i++)
	{
	  if(words[i]!=' ')
	  {
	    num++;
		if(i==l-1)
		{
		  printf("%d",num);
		}
	  }
	  if(words[i]==' ')
	  {
		if(num!=0)
		{
	      printf("%d",num);
		  printf(",");
		}
		num=0;
	  }
	}
	return 0;
}
main()
{
    int i=0,t=0,n,b[5000],j=0,k=-1;
	char s[5000];
    gets(s);
    n=strlen(s);
	while(i<n)
	{
		if(s[i]==' '||s[t]==NULL)
			i=i+1;
		else
		{
			t=i;
			j=0;
			while(1)
			{
				if(s[t]==' '||s[t]==NULL)
					break;
				else
					j=j+1;
				t=t+1;
			}
			k=k+1;
			b[k]=j;
			i=i+j;
		}
	}
	i=0;
	while(i<k)
	{
		printf("%d,",b[i]);
		i=i+1;
	}
	printf("%d",b[i]);
	return 0;
}
int main()
{
	int n[300] ;
	char a[30000];
	gets(a);
	int l = 0 , k = 0;
	for(int i = 0;;i++)
	{
		if((int)a[i] == 0)
		{
			n[l] = k;
			break;
		}
		else if((int)a[i] == 32)
		{
			n[l] = k;
			k = 0;
			l++;
		}
		else
		{
			k++;
		}
	}
	for(int j = 0;j<l;j++)
	{
		if(n[j] != 0)
		{
			printf("%d,",n[j]);
	
		}
	}
	printf("%d",n[l]);
	return 0;
}
void main()
{
	char str[1000];
	int n,i,p=0;
	gets(str);
	i=0;
	while(str[i]!='\0')
	{
		for(;str[i]==' ';i++);
		n=0;
		for(;str[i]!=' '&&str[i]!='\0';i++)
		{
			n++;
		}
		p++;
		if(p!=1)
			printf(",");
		printf("%d",n);

	}
	printf("\n");
}
int main()
{
	int i, j=0, m=0;
	int sum[301] ={0};
	char word[3000];

	gets(word);
	
	for(i = 0; word[i]!='\0'; i++)
	{
		if(word[i]!=' ')
			sum[j]++;
		else
		{
			j++;
			while(word[i]==' ')
				i++;
			i = i - 1;
		}
	}
		printf("%d", sum[0]);
		for(i = 1; i <= j; i++)
			printf(",%d", sum[i]);
	return 0;
}
int main()
{
char str[300][300];
int i=0,j=0,k=0;
for(i=0;i<300;i++)
 {
   scanf("%s",&str[i][0]);
   if(str[i-1][0]=='\0') break;
  }
for(;k<i-2;k++)
  printf("%d,",strlen(str[k]));
printf("%d",strlen(str[i-2]));
}
int main()
{
	char zf[300*100];
	gets(zf);
	int i,j=0,k=0;
	int length[300];
	int len=strlen(zf);
	for(i=0;i<len;i++)
	{
		k++;
		if(zf[i]==' ')
		{
			length[j]=k-1;
			j++;
			k=0;
		}
		if(i==len-1)
		{
			length[j]=k;
			j++;
			break;
		}
	}
	printf("%d",length[0]);
	for(i=1;i<j;i++)
	{
		if(length[i]==0) continue;
		printf(",%d",length[i]);
	}
	return 0;
}
int main()
{
	int sz[600];
	char  zfc[600],words[300][100];
    gets(zfc);
	int i,n=0,k=0;
	for(i=0;zfc[i]!=0;i++){
		if(zfc[i]==' '){
		    zfc[i]='\0';
            strcpy(words[n],(zfc+k));
			n++;
			k=i+1;
		}
	}
	strcpy(words[n],(zfc+k));
	n++;
	for(i=0;i<n;i++){
		sz[i]=strlen(words[i]);
	}
	printf("%d",sz[0]);
	for(i=1;i<n;i++){
		if(sz[i]!=0){
			printf(",%d",sz[i]);
		}
	}
	return 0;
}
int main()
{
    char a[1000];
    gets(a);
    int n=1;
    int c=strlen(a);
    int sz[n],sz1[n];
    sz[0]=-1;
    for (int i=1;a[i]!='\0';i++)
    {
         if(a[i]==' ')
         {
             sz[n]=i;
             n++;
         }
    }
    sz[n]=c;
    for(int i=0;i<=n;i++)
    {
        sz1[i]=sz[i+1]-sz[i]-1;
    }
    for(int i=0;i<n-1;i++)
    {
        if(sz1[i]>0&&sz1[i]<10000)
        {
            printf("%d,",sz1[i]);
        }
    }
    printf("%d",sz1[n-1]);
    return 0;
}
int main()
{
 char s[3000];
 gets(s);
 int count=0;
 int i,len;
 for(i=0;;i++)
 {
  if(s[i]!=' ' && s[i]!='\0')
	  count++;
   else 
	  break;
 }
 printf("%d",count);
 len=strlen(s);
 if(s[i]=='\0') 
	  return 0;
 count=0;
 for(;i<=len;i++)
 {
    if(s[i]!=' '&&(s[i+1]==' '||s[i+1]=='\0'))
	{count++;printf(",%d",count);count=-1;}
	if(s[i]==' ')
		 continue;
    if(s[i]!=' ' && s[i]!='\0')
		count++;
	if(s[i+1]=='\0')
		 break;
 }
 return 0;
}
void main()
{
	char ch[60000];
    int i=0;
	gets(ch);
	int length=0;
	for(i=0;i<strlen(ch);i++)
	{
		if(ch[i]==' ')
		length=0;
		else
		length=length+1;
		if(ch[i]!=' '&&ch[i+1]==' ')
		printf("%d,",length);
		if(ch[i]!=' '&&ch[i]!='\0'&&ch[i+1]=='\0')
		printf("%d",length);
	}
	
}
int main(){
		char a[3000];
		gets(a);

		int len=strlen(a);
		int b[300];//???

		int temp=0;//?????
		int num=0;
		int i;

		for(i=0;i<len;i++){
			if(a[i]==' '&&a[i-1]!=' '){
				
				b[num]=i-temp;
				num+=1;
				
			}
			if(a[i]==' '&&a[i+1]!=' '){
				temp=i+1;
			}
		}

		
	
		b[num]=len-temp;
		num++;

		//printf("%d %d\n",len,temp);

		for(i=0;i<num;i++){
			if(i==0){
				printf("%d",b[i]);
			}
			if(i!=0){
				printf(",%d",b[i]);
			}
		}

	    return 0;
}
int main()
{
	char *str;
	int n,num[128]={0},i=0,j,k=1;
	char *p;
	
	str = (char *)malloc(1000*sizeof(char));
	gets(str);
	
	for(p=str;*p!='\0';p++){
		if(*(p-1)==' '&&*p!=' ') k++;
	}
	
	for(p=str;*p!='\0';p++){
		if (*p!=' '&&i==0) {
			num[0]++;
			continue;
		}
		if (*p!=' ') num[i]++;
		if (*p==' '&&*(p+1)!=' '){
			i++;
		}
	}
	
	for (j=0;j<k-1;j++){
		printf("%d,",num[j]);
	}
	printf("%d",num[j]);

}
int main()
{
 char str[3000];
 int i=0,flag=0,letter=0;
 gets(str);
 while(1)
      {
       if(str[i]==' '||str[i]=='\0')
         {
          if(letter)
            {
                if(flag)
                   printf(",");
                else 
                     flag=1;
                printf("%d",letter);
                letter=0;
           }
         }  
       else 
           letter++;
       if(!str[i])
         break;
       i++;
       }
 return 1;
}
int main()
{   int i,sum=0;
	int a[500];
	char c[10000];
	gets(c);
	for(i=0;i<strlen(c)+1;i++){
		if(c[i]!=' '&&c[i]!='\0'){
			sum++;
		}
		if(c[i]==' '){
			if(sum!=0){
				printf("%d,",sum);
				sum=0;
			}
		}
		if(c[i]=='\0'){
			printf("%d",sum);
		}
	}
	return 0;
}
void main()
{
  char string[300][20];
  int i,j=0,k,l[300],n=0;
  while((scanf("%s ",string[n]))!=EOF)
	  n++;
  for(i=0;i<n;i++)
	  l[i]=strlen(string[i]);
  for(k=0;k<n-1;k++)
     printf("%d,",l[k]);
  printf("%d",l[n-1]);
}
void main()
{
	int num[300],n,word,k,i;
	char str[10000];
	int *pnum;
	char *pstr;
	gets(str);
	k=strlen(str);
	pstr=str;
	pnum=num;
	for(i=0;i<300;i++)
	{
		*pnum=0;
		pnum++;
	}
	pnum=num;
	word=1;
	n=0;
	for(pstr=str;pstr<str+k;pstr++)
	{
		if(*pstr==' ')
		{
			if(word==0)
			{
				word=1;
				n++;
				pnum++;
			}
		}
		else 
		{
			word=0;
			(*pnum)++;
		}
	}
	for(pnum=num;pnum<num+n;pnum++)
		printf("%d,",*pnum);
	printf("%d",*pnum);
}
int main()
{
	char ch;
	int i = 0, j, k;
	int conuter = 0;
	int length[300] = {0};
	while (1)
	{
		scanf("%c", &ch);
		if (ch == '\n')
		{
			length[i] = conuter;
			break;
		}
		else
		{
			if (ch == ' ')
			{
				length[i] = conuter;
				conuter = 0;
				if (length[i] != 0)
				{
					i++;
				}
			}
			else
			{
				conuter++;
			}
		}
	}
	for (j = 0; j < i; j++)
	{
		printf("%d,", length[j]);
	}
	printf("%d", length[j]);
	return 0;
}
void main()
{
	int n=0,i=0,j=0,k=0;
	int a[300]={0};
	char b[10000];
	gets(b);
	for(i=0;b[i]!='\0';i++)
	{
		if(b[i]!=' ')
			k++;
		if(b[i]==' '&&k!=0)
		{
			a[j]=k;
			j++;
			k=0;
		}		
	}
	for(i--;b[i]!=' '&&i>=0;i--)
		a[j]++;
	for(i=0;i<j;i++)
		printf("%d,",a[i]);
	printf("%d\n",a[j]);
}
void main()
{
	char c='\n';char a[100]; int i;
	for(i=0;;i++)
	{
		if(i==0)
		{scanf("%s",a);
		printf("%d",strlen(a));}
		else
	{scanf("%s",a);
		printf(",%d",strlen(a));}
		if(c==getchar()) break;
	}
}
void main()
{
	char a[100],b;
	int i,j;
	scanf("%s",a);
		printf("%d",strlen(a));
	while(1)
	{
		if((b=getchar())=='\n')break;
		else
		{
		scanf("%s",a);
		printf(",%d",strlen(a));
		}
	}
	
}
int main()
{
	int len=0,m=0,i=0;
	char sentence[6000];
	gets(sentence);
	len=strlen(sentence);
	for(i=0;i<=len;i++)
	{
		if(sentence[i]!=' '&&sentence[i]!=0)
			m++;
		else
		{
			printf("%d",m);
			m=0;
			break;
		}
	}
	for(i=i+1;i<=len;i++)
	{
		if(sentence[i-1]==' '&&sentence[i]!=' ')
			m=1;
		else if(sentence[i-1]!=' '&&(sentence[i]!=' '&&sentence[i]!=0))
			m++;
		else if(sentence[i-1]!=' '&&(sentence[i]==' '||sentence[i]=='\0'))
			printf(",%d",m);
	}
	return 0;
}
int main(){
	char str[1000];
	int i,len,k,sz[1000]={0};
	gets(str);
	len=strlen(str);
	for(i=0,k=1;i<len;i++){
		if(str[i-1]==' '&&str[i]!=' '){
        sz[k]=i;
		k++;
	
	}}
	for(i=0;i<len;i++){
		if (str[i]==' '){
			str[i]=0;
		}
	}

	for(i=0;i<k-1;i++){
		printf("%d,",strlen(&str[sz[i]]));}
	printf("%d",strlen(&str[sz[k-1]]));
 return 0;
}
int main()
{
	char a[6000],f[300][20];
	int b,d=0,i,e=0,s[100];
	gets(a);
	b=strlen(a);
	for(i=0;i<b;i++)
	{
		if(a[i]=='\0'||a[i]==' ')
		{
			if(a[i+1]!=' ')
			{
				d=0;
				e++;
			}
		}
		else
		{
			f[e][d]=a[i];
			d++;
			f[e][d]='\0';
		}
	}
	for(i=0;i<=e;i++)
	{
		s[i]=strlen(f[i]);
	}
	for(i=0;i<e;i++)
	{
		printf("%d,",s[i]);
	}
	printf("%d\n",s[e]);
	return 0;
}
char str[1000];
int main(){
	char c;
	int i=0;
	while((c=getchar())!='\n'){
		str[i]=c;
		i++;
	}
	str[i]='\0';
	int len=i;
	int count=0;
	int num=0;
	for(i=0;i<=len;i++){
		if (str[i]==' '||str[i]=='\0'){
			if (count==0) continue;
			if (num==0){
			cout<<count;
			num++;
			}
			else
			{cout<<","<<count;
			}
			count=0;
			continue;
		}
		count++;
	}
	cout<<endl;

	return 0;
}
int main()
{
    int i,j,k,n=0,e=0,m,b[300];
    char a[3000];
    gets(a);
    for(i=0;i<3000&&a[i]!='\0';i++){
        if(a[i]==' '){e=1;break;}}
    if(e==0){printf("%d",strlen(a));}
    if(e==1){   
    for(i=0;i<3000;i++){
        if(a[i]=='\0'){printf(",%d",i-k);break;}
        if(a[i]==' '){n++;
        if(n==1)
        {printf("%d",i);}
        if(n>1)
        {if(i-k>0)printf(",%d",i-k);}
        
        for(j=i+1;j<3000&&a[j]!='\0';j++)
            {if(a[j]!=' '){k=j;break;}}}}}
    
    return 0;
}
        ;
int main()
{
	char str[10000]={0};
	char mid[200][300]={0};
int a[300];
	gets(str);
	char *p;
	p=str;
	int i=0,len=0;
	int j=0,k=0;
	len=strlen(str);
	for(i=0;i<len;i++)
	{
		if(*p!=' ')
		{
			mid[j][k]=*p;
			k++;
		}
		if(*p==' ')
			if(*(p-1)!=' ')
			{
				j++;
				k=0;
			}
		p++;
	}
	p=0;
	int row=0;          
	i=0;
	while(mid[i][0]!=0)
	{
		row++;
		i++;
	}
	for(i=0;i<row;i++)
		{
			a[i]=strlen(mid[i]);
		}
	for(i=0;i<row-1;i++)
	{
		printf("%d,",a[i]);
	}
printf("%d",a[row-1]);
return 0;
}
int main(){
	int i,wz1[300],wz2[300],j=1,k=0;
	char str[1000];
	gets(str);
	for(i=0;i<strlen(str);i++){
		if(str[i]!=' '&&str[i-1]==' '){
			wz1[j]=i;
			j++;
		
		}
		if(str[i]!=' '&&str[i+1]==' '){
			wz2[k]=i;
			k++;
		
		}
}
	wz1[0]=0;
	wz2[k]=strlen(str)-1;

	for(i=0;i<j-1;i++){
	  printf("%d,",wz2[i]-wz1[i]+1);
	  
	}
	printf("%d",wz2[k]-wz1[j-1]+1);
	
	return 0;
}
int main(){
    char zfc[5000];
    int i,sz[1000]={0},j=0,k;
    gets(zfc);
    for(i=0;zfc[i]!='\0';i++){
        if(zfc[i]!=' '){
           sz[j]++;
        }
        if(zfc[i]==' '&&zfc[i+1]!=' '){
            j++;
        }
    }
    for(k=0;k<j;k++){
    printf("%d,",sz[k]);
    }
    printf("%d",sz[j]);
    return 0;
}
void main()
{
int n,m,a=0,i;
char str[3000];
gets(str);
n=strlen(str);
str[n]='\0';
for(i=0;;i++){
  if(str[i]==' '||str[i]=='\0') {m=i;printf("%d",m);break;}
  else continue;
  }
for(i=m+1;i<n;i++){
  if(str[i]!=' ') a++;
  if((str[i]==' '&&str[i+1]!=' ')) {printf(",%d",a);a=0;}
  if(str[i+1]=='\0') printf(",%d",a);
  }
}
int main(){
	char a[20000];
	gets(a);
	int len=0,n=0,i=0;
	while(a[i]!='\0'){
		if(a[i]!=32){
			len++;
		}
		else{
			if(a[i-1]!=32){
				printf("%d,",len);
				len=0;
			}
		}
		i++;
	}
	printf("%d",len);
	return 0;
}
void main()
{
	char a[3000]={""},c[50]={""};
	int i,j,k=0;
	gets(a);
	for(i=0;a[i]!='\0';)
	{
		if(a[i]==32) i++;
		else
		{
		for(j=0;a[i]!=32&&a[i]!='\0';i++,j++)
			c[j]=a[i];
		c[j]='\0';
		if(k==0)
			printf("%d",strlen(c));
		else printf(",%d",strlen(c));
		i++;
		k++;
		}
	}
}
void main()
{
	char str[10000]={'\0'};
	int n,sum=0,j=0,i;
	int a[10000];
	gets(str);
	n=strlen(str);
	for (i=0;i<=n;i++)
	{
		if (str[i]!=' '&&str[i]!='\0')
			sum=sum+1;
		else
		{
			a[j]=sum;
			j++;
			sum=0;
		}
	}
	for(i=0;i<j-1;i++)
	{
		if (a[i]!=0)
		{
			printf("%d,",a[i]);
		}
	}
	printf("%d",a[j-1]);
}