문제 링크
7795번 먹을 것인가 먹힐 것인가 : https://www.acmicpc.net/problem/7795
문제 설명 및 해결 아이디어
lower_bound를 이용하여 x라는 값을 찾으면, x보다 크거나 같은 값중 최소값의 위치를 return해준다. 이 아이디어를 이용하여 문제를 풀 수 있다.
코드
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <cstdio> #include <iostream> #include <vector> #include <algorithm> using namespace std; int t, n, m, num; vector<int> avt, bvt; int main() { scanf("%d", &t); while (t--) { scanf("%d %d", &n, &m); for (int i = 0; i < n; ++i) { scanf("%d", &num); avt.push_back(num); } for (int i = 0; i < m; ++i) { scanf("%d", &num); bvt.push_back(num); } sort(bvt.begin(), bvt.end()); int res = 0; for (auto i : avt) { res += lower_bound(bvt.begin(), bvt.end(), i) - bvt.begin(); } printf("%d\n", res); avt.clear(); bvt.clear(); } return 0; } | cs |
'문제풀기이야기' 카테고리의 다른 글
1940번_주몽 (0) | 2018.07.17 |
---|---|
3273번_두 수의 합_BOJ (0) | 2018.07.17 |
10815번_숫자카드_BOJ (0) | 2018.07.17 |
2110번_공유기 설치_BOJ (0) | 2018.07.16 |
1300번_K번째 수_BOJ (0) | 2018.07.16 |