이진탐색 저기 있는 조건대로 다 했는데 자꾸 wrong answer이라고 튕기네 좆파고 쉑 ㅅㅄㅄㅄㅂ
#include
#define SIZE 16
int binary_search(int list[], int n, int key);
int main()
{
int grade[SIZE] = {2,6,11,13,18,20,22,27,29,30,34,38,41,42,45,47};
int input;
printf("입력 데이터 ");
scanf("%d", &input);
printf("출력 데이터\n");
printf("%d", binary_search(grade, SIZE, input));
return;
}
int binary_search(int list[], int n, int key)
{
int start = 0;
int end = n - 1;
int center = 0;
while (start <= end)
{
printf("[%d %d]\n", start, end);
center = (start + end) / 2;
if (list[center] == key)
{
return center;
}
if (list[center] > key)
{
end = center - 1;
}
else
{
start = center + 1;
}
}
return -1;
}
이게 코딩한건데 알고리즘에 잘못된게 진짜 있어보임...? 오늘까지 제출인데 미치겠다 진짜
댓글 0