//#include<stdio.h>
//
//typedef struct
//{
// int score;
// int grade;
// int name;
//}d;
//
//int main()
//{
// d arr[101]={0};
// int n,i,j,m;
// scanf("%d %d",&n,&m);
// for(i=1 ;i<=n ;i++)
// {
// scanf("%d",&arr[i].name);
// scanf("%d",&arr[i].score);
// }
// for(j=1 ;j<=n ;j++)
// {
// for(i=1 ;i<=n ;i++)
// {
// if(arr[j].score < arr[i].score)
// {
//
// }
// }
// }
//}
//c언어 -> 기계어 : 컴파일
//
//문자열 (string) : char 일차원 배열
//#include <stdio.h> // 기본입출력문 관련 내용을 포함해라 std(스탠다드) + io(입출력)
//#include <string.h> // 문자열 관련 내용을 포함해서 컴파일해라
//int main()
//{
// char arr[50]={};
// int i;
//
// //문자열입력
// scanf("%s",arr); // arr = &arr[0]
//
// //1. 문자열 "통째로" 출력
// printf("%s",arr);
//
// //2. 문자열을 "하나하나"출력
// for(i=0 ; arr[i]!=NULL; i++)
// {
// printf("%c",arr[i]);
// }
// printf("%c ",arr[0]);
// printf("%c ",arr[1]);
// printf("%c ",arr[2]);
// printf("%c ",arr[3]);
// printf("%c ",arr[4]);
// return 0;
//}
//1110010101100100
//#include<stdio.h>
//#include<string.h>
//int main()
//{
// char arr[9]={};
// scanf("%s",arr);
// printf("%s",arr);
// return 0;
//}
//문자끼리 ==으로 비교가능
//XXXX문자열끼리는 ==으로 비교 XXXXXXX
//#include<stdio.h>
//#include<string.h>
//int main()
//{
// char arr[15]={};
// scanf("%s",arr); //arr = &arr[0]
// if(arr[0] == 'l' && arr[1] == 'o' && arr[2] == 'v' && arr[3] == 'e' && arr[4] == NULL)
// {
// printf("I love you.");
// }
//}
//#include<stdio.h>
//#include<string.h>
//int main()
//{
// char arr[10]={};
// scanf("%s",arr);
// for(i=0 ;arr[i]!=NULL ;i++)
// {
// if(arr[i] == 't')
// {
// printf("%c ",i+1);
// }
// }
//}
#include<stdio.h>
#include<string.h>
int main()
{
char arr[101]={};
int i,j=0,q=0;
gets(arr);
for(i=0 ;arr[i]!=NULL ;i++)
{
if(arr[i] == 'C' || arr[i] == 'c')
{
j++;
if(arr[i+1] == 'c'||'C')
{
q++;
}
}
}
printf("%d\n%d",j,q);
}