페이지가 로드되지 않나요? 여기를 눌러보면 고쳐질 수도 있어요.
Placeholder

#3190

패턴 세기 1s 64MB

문제

동혁이가 깔아놓은 게임에 바이러스가 침투했다.

 

게임을 실행하려고 하자, 이상한 문자열 s, 어떤 계좌번호와 함께 게임 대신 다음과 같은 문구가 떴다.

 

s에 있는 1(0…0)1 패턴을 모두 세서 그 개수를 아래에 써 넣거나, 나에게 10만원을 송금해라. 그래야만 게임을 계속 할 수 있을 것이다. 1시간 내에 두 가지를 모두 못한다면, 앞으로 영원히 그 게임을 할 수 없을 것이다.

 

여기서 1(0…0)1 패턴에서 (0…0)이란 하나 이상의 0이 연속된 것을 말한다. 예를 들어 101이나 10001 같은 것이다. s가 jun1001011gol이라면, 1(00)1과 1(0)1 이 보이므로 패턴의 개수는 2이다.

 

게임은 해야겠고, 저런 삼류 해커에게 돈을 지불할 수는 없다. 어떤 s가 주어지더라도 패턴의 개수를 재빠르게 세주는 프로그램을 작성하자.​ 


입력

입력은 q개의 테스트 케이스로 이루어진다. 첫 줄에는 테스트 케이스의 개수인 q(1 <= q <= 20)가 입력된다. 다음 q 줄에 걸쳐서, 각 테스트 케이스별로의 문자열 s가 주어진다. s의 길이는 2,000이하이다. s를 구성하는 문자는 숫자 또는 알파벳 소문자뿐이다.

출력

q줄에 걸쳐, 각 테스트 케이스 별로 s에 들어있는 패턴의 개수를 출력한다.

예제

3

1000001xxx101
1001i010love01001you
100101000001
2

2
3

출처

Hackerrank, Easy Level
로그인해야 코드를 작성할 수 있어요.