#172

꽃 찾기

실행 시간 제한1
메모리 제한512MiB
아직 제출한 코드나 실행한 테스트가 없습니다.

크기가 다른 꽃들이 개 있다. 꽃들 중 크기가 정확히 인 것을 찾으려고 한다.

그런데, 꽃들을 살펴보니 꽃이 작은 것부터 순서대로 놓여 있는 것을 알게 되었다. 꽃을 빨리 찾을 수 있는 방법이 있을까?

꽃 사진

오른쪽 프로그램을 채워 봅시다.

오른쪽 코드에서 함수의 인자 AR은 꽃 크기가 저장된 배열, x는 찾으려는 값, stAR의 인덱스 s부터 t까지에서 찾으라는 의미이다.

입력 형식

프로그램의 입력 첫 줄에는 꽃의 개수 과 찾으려는 꽃의 크기 가 주어진다. 두번째 줄에는 꽃들의 크기가 왼쪽부터 순서대로 주어진다.

이상 이하이다. 꽃들의 크기와 이상 이하의 정수이다.

프로그램은 찾으려는 꽃이 왼쪽에서 몇 번째 자리에 있는지 출력해야 한다. 만약 찾으려는 꽃이 없으면 -1을 출력해야 한다.

예제 입력

7 8
2 3 4 6 8 9 10

예제 출력

5
int BS(int AR[], int x, int s, int t) { int m; if (t < s) return -1; m = (s + t) / 2; if (AR[m] == x) { return m; } else if (AR[m] > x) { return BS(AR, x, s, m-1); } else { return BS(AR, , , ); } } // 함수 호출 방식: BS(A, S, 1, N)
cpp
코드를 작성하려면 로그인해 주세요.