포럼
문제 USACO0483

외로운 사진

설명

농부 존은 최근 새로운 소 \(N\)마리 \((3 \le N \le 5 \times 10^5)\)를 들여왔는데, 각 소의 품종은 건지(Guernsey) 또는 홀스타인(Holstein)이다.

소들은 현재 일렬로 서 있고, 농부 존은 연속한 세 마리 이상의 소로 이루어진 모든 구간의 사진을 찍으려 한다. 하지만 그는 건지 품종의 소가 정확히 한 마리이거나 홀스타인 품종의 소가 정확히 한 마리인 사진은 원하지 않는다. 그 한 마리뿐인 소가 고립감과 소외감을 느낄 것이라고 생각하기 때문이다. 세 마리 이상의 소로 이루어진 모든 구간의 사진을 찍은 뒤, 그는 건지가 정확히 한 마리이거나 홀스타인이 정확히 한 마리인, 이른바 "외로운" 사진을 모두 버린다.

소들의 배치가 주어질 때, 농부 존이 버리게 될 외로운 사진이 몇 장인지 구하는 것을 도와주자. 두 사진은 줄에서 시작하는 소 또는 끝나는 소가 다르면 서로 다른 사진이다.

출제자: Nick Wu

제약

채점 방식

  • 테스트 케이스 2-4는 \(N \le 50\)을 만족한다.
  • 테스트 케이스 5-10은 \(N \le 5000\)을 만족한다.
  • 조금 더 도전적인 테스트 케이스 11은 추가 제약이 없다. 이 케이스의 답은 표준 32비트 정수에 담기에 너무 클 수 있으므로 더 큰 정수 자료형(예: C++의 64비트 "long long int")이 필요할 수 있음에 유의한다.

출제자: Nick Wu

입력 형식

입력의 첫째 줄에 \(N\)이 주어진다.

둘째 줄에 \(N\)개의 문자로 이루어진 문자열이 주어진다. \(i\)번째 문자가 G이면 줄에서 \(i\)번째 소는 건지이다. 그렇지 않으면 H이며 \(i\)번째 소는 홀스타인이다.

출력 형식

농부 존이 외롭다는 이유로 버리게 될 사진의 수를 출력한다.

예제 1
입력
5
GHGHG
출력
3
설명

Every substring of length 3 in this example contains exactly one cow whose
breed is Guernsey or exactly one cow whose breed is Holstein --- so these
substrings represent lonely photos and would be thrown out by Farmer John.
All longer substrings (GHGH, HGHG, and GHGHG) are
acceptable to him.

문제 정보

riseoj 작성

출처 올림피아드 > USACO > 2021-2022 > December > Bronze

태그

평가 및 의견

Lonely Photo

개요
출제자 난이도 Unrated 레이팅 미적용 의견 0 / 1 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

Lonely Photo

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8