반응형
#include <iostream>
#include <string>
using namespace std;
int binse[10] = { 4,4,5,7,8,10,20,22,23,24 };
int ans = 100;
int bin_search(int start, int end, int target) {
if (start > end) return 1;
int mid = (start + end) / 2;
if (binse[mid] == target) {
ans = 0;
return 0;
}
else if (binse[mid] > target) {
bin_search(start, mid - 1, target);
}
else {
bin_search(mid + 1, end, target);
}
return ans;
}
int main() {
int n;
cin >> n;
int ret = bin_search(0,9,n);
if (ret == 0) {
cout << "O";
}
else
cout << "X";
return 0;
}
.. 궁금한 건 return ans뒤에 꼭 써야 결과가 나온던데..
왜 그런지는 알겠는데 저 방법 말곤 없나??
아니면 다른 방식으로 구현할 수 없나..?!?!?!
반응형
'C언어 > 문제풀다 하나씩' 카테고리의 다른 글
흠 start = mid는 에러나는 군 (0) | 2020.05.23 |
---|---|
상처 길이 찾기 문제 (0) | 2020.05.23 |
이중배열에서 binary search 해보기 (0) | 2020.05.23 |
binary search 구현2 서재에서 책 찾기 (0) | 2020.05.23 |
Binary Search Tree 구현해보기 search함수 (0) | 2020.05.22 |
setUnion 과 findboss해보기 - UNIONFIND (0) | 2020.05.22 |
배열 회전시키기 (0) | 2020.05.22 |
오랜만에 direct배열 써보기 (0) | 2020.05.22 |