반응형
코드
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main(void)
{
int n, m, i, left, right, center, result = -1;
cin >> n >> m;
vector<int> vInt(n);
for (i = 0; i < n; ++i)
cin >> vInt[i];
sort(vInt.begin(), vInt.end());
left = 0;
right = n - 1;
while (left <= right)
{
center = (left + right) / 2;
if (vInt[center] < m)
{
left = center + 1;
}
else if (vInt[center] == m)
{
result = center;
break;
}
else
{
right = center - 1;
}
}
cout << result + 1 << endl;
return 0;
}
출력 결과
해당 포스트는 'it 취업을 위한 알고리즘 문제풀이 (with C/C++) : 코딩테스트 대비' 강의를 수강하며 개인 백업용으로 메모하였습니다.
인프런: https://www.inflearn.com/course/%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98#
반응형