프로그래밍 알고리즘

[정올 1295] 이진탐색

꾸준한사람 2023. 1. 3. 03:46
반응형

http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=578&sca=99&sfl=wr_hit&stx=1295 

 

JUNGOL

 

www.jungol.co.kr

#include <stdio.h>
int N, A[50010], T;

int BinSrch(int s, int e, int val) {
	int m = (s + e) / 2;
	//printf("[val=%d] s: %d, m: %d, e: %d\n", val, s, m, e);

	if (A[m] == val) return m;
	else if (s >= e) return 0;
	else if (A[m] > val)	return BinSrch(s, m, val);
	else		return BinSrch(m + 1, e, val); 
}

int main(void) {
	int M;
	scanf("%d", &N);
	for (int i = 0; i < N; i++) scanf("%d ", A + i + 1);

	scanf("%d", &T);
	for (int i = 0; i < T; i++)	{
		scanf(" %d", &M);
		int idx = BinSrch(1, N, M);
		printf("%d\n", BinSrch(1, N, M));
	}

	return 0;
}
반응형

'프로그래밍 알고리즘' 카테고리의 다른 글

[정올 1332] 작명하기  (0) 2023.01.03
[정올 1309] 팩토리얼  (0) 2023.01.03
[정올 1274] 2진수를 10진수로...  (0) 2023.01.03
[정올 1264] 마법색종이  (0) 2023.01.03
[정올 1262] 긴 자리 곱셈  (0) 2023.01.03