슬라이드 개수
면접 대비시간 제한1초메모리 제한1024 MB
배열과 상수 C가 주어질 때, 두 포인터 과정에서 만들어지는 윈도우마다 각 원소가 몇 번 포함되는지 구합니다.
문제
수업 과제로 슬라이딩 윈도우 알고리즘을 이용해 정수 배열을 분석한다. 정수 개 과 상수 가 주어지면, 알고리즘은 시작 인덱스 와 끝 인덱스 를 다음과 같이 관리한다.
- 처음에 로 둔다.
- 인 동안 다음을 반복한다.
- 이면 를 1 증가시킨다.
- 그렇지 않고 이면 를 1 증가시킨다.
- 그 밖의 경우에는 를 1 증가시킨다.
실행 중에 나타나는 서로 다른 인덱스 쌍 마다 윈도우 하나가 정해진다. 이면 원소 는 윈도우 에 속한다. 이면 윈도우는 비어 있다.
앞의 입력에서 나타나는 윈도우는 , , , , , , , , , 이다. 각 원소 에 대해, 실행 중 가 속하는 서로 다른 윈도우의 개수를 구한다.
입력
첫 줄에 원소의 개수 ()과 윈도우 상수 ()이 주어진다.
둘째 줄에는 정수 ()이 주어진다.
출력
각 원소에 대해 입력 순서대로, 알고리즘 실행 중 그 원소가 속하는 서로 다른 윈도우의 개수를 출력한다.