문제

https://www.acmicpc.net/problem/7795
7795번: 먹을 것인가 먹힐 것인가
심해에는 두 종류의 생명체 A와 B가 존재한다. A는 B를 먹는다. A는 자기보다 크기가 작은 먹이만 먹을 수 있다. 예를 들어, A의 크기가 {8, 1, 7, 3, 1}이고, B의 크기가 {3, 6, 1}인 경우에 A가 B를 먹을
www.acmicpc.net
코드
#include <iostream>
#include <algorithm>
using namespace std;
int a[20000];
int b[20000];
int main(){
int t,n,m;
cin >> t;
while(t--){
cin >> n >> m;
for(int i=0; i<n; i++){
cin >> a[i];
}
for(int i=0; i<m; i++){
cin >> b[i];
}
sort(a,a+n);
sort(b,b+m);
int result=0;
for(int i=0; i<n; i++){
int low=0;
int high=m-1;
int x=a[i];
while(low<=high){
int mid=(low+high)/2;
if(b[mid]>=x) high=mid-1;
else low=mid+1;
}
result+=low;
}
cout << result << '\n';
}
return 0;
}
정리
참조
'Beakjoon > binary search' 카테고리의 다른 글
| [백준] 1072번 게임 (C++) - binary search (0) | 2022.09.06 |
|---|---|
| [백준] 2512번 예산 (C++) - binary search (0) | 2022.09.05 |
| [백준] 1764번 듣보잡 (C++) - binary search, map (0) | 2022.01.19 |
| [백준] 1654번 랜선 자르기 (C++) - binary search (0) | 2022.01.16 |
| [백준] 2805번 나무 자르기 (C++) - binary search (0) | 2022.01.14 |