슈퍼히어로
면접 대비시간 제한2초메모리 제한1024 MB
건물 높이와 영웅의 위치가 주어질 때, 어떤 영웅도 뛰어갈 수 없는 건물의 수를 구하고 그 수를 바꾸지 않으면서 제거할 수 있는 영웅의 최대 수를 구합니다.
문제
맨해튼의 긴 거리를 따라 높이가 서로 다른 빌딩 개가 일렬로 늘어서 있다. 일부 빌딩의 꼭대기에는 비밀의 힘을 지닌 슈퍼히어로가 서 있다.
높이가 미터인 빌딩에 있는 슈퍼히어로는 두 빌딩 사이에 있는 모든 빌딩(뛰어갈 목표 빌딩 포함)의 높이가 미터 이하일 때만 다른 빌딩으로 뛰어갈 수 있다. 어떤 슈퍼히어로도 뛰어갈 수 없는 빌딩을 접근 불가능 빌딩이라고 한다.
빌딩의 높이와 슈퍼히어로의 위치가 주어진다. 다음 두 가지를 구하라.
- 접근 불가능 빌딩의 수
- 접근 불가능 빌딩의 수가 그대로 유지되도록 제거할 수 있는 슈퍼히어로의 최대 수
입력
첫째 줄에 자연수 이 주어진다. ()
둘째 줄에 100만 미만의 자연수 개가 주어진다. 번째 수는 번째 빌딩의 높이이다.
셋째 줄에 0 또는 1이 개 주어진다. 번째 수가 1이면 번째 빌딩의 꼭대기에 슈퍼히어로가 있고, 0이면 없다.
출력
첫째 줄에 첫 번째 질문의 답을, 둘째 줄에 두 번째 질문의 답을 출력한다.
힌트
첫 번째 테스트 데이터 설명: 슈퍼히어로는 한 명뿐이며 높이 3인 두 번째 빌딩의 꼭대기에 있다. 그는 자신의 빌딩과 높이 1인 빌딩으로 뛰어갈 수 있다. 높이 2인 빌딩과 사이에 높이 4인 빌딩이 있으므로 그곳으로는 뛰어갈 수 없다.
두 번째 테스트 데이터 설명: 접근 불가능 빌딩은 높이 5인 빌딩 하나뿐이다. 두 번째 빌딩의 슈퍼히어로를 제거하면 첫 번째와 두 번째 빌딩이 접근 불가능해지고, 다섯 번째 빌딩의 슈퍼히어로를 제거하면 네 번째와 다섯 번째 빌딩이 접근 불가능해진다. 따라서 접근 불가능 빌딩의 수를 유지하면서 제거할 수 있는 슈퍼히어로는 없다.
세 번째 테스트 데이터 설명: 다섯 번째와 일곱 번째 빌딩의 슈퍼히어로를 제거해도 접근 불가능 빌딩의 수는 2로 그대로이다. 높이 4인 빌딩의 슈퍼히어로는 사이에 높이 3인 빌딩이 있어도 높이 2인 빌딩으로 뛰어갈 수 있다는 점에 유의한다.