Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 문자열
- 투 포인터
- 백준
- 다익스트라
- 브루트포스
- 재귀
- VR
- 수학
- 누적 합
- 그리디 알고리즘
- Team Fortress 2
- 알고리즘
- Unreal Engine 5
- 우선순위 큐
- 자료구조
- 백트래킹
- ue5
- c++
- 트리
- BFS
- 그래프
- XR Interaction Toolkit
- 다이나믹 프로그래밍
- 시뮬레이션
- DFS
- 유니티
- 스택
- 유니온 파인드
- 정렬
- 구현
Archives
- Today
- Total
목록백준 2143 c++ (1)
1일1알

우선 A와 B의 모든 구간에서의 누적합들을 저장하는 벡터를 만든다. A의 누적합과 B의 누적합을 더했을때 t가 되는 경우를 찾으면 되는데, 이분 탐색을 위해 둘중 하나를 정렬한다. 나는 B를 정렬했다. A의 모든 원소를 탐색하면서 B의 원소의 값이 t - A[i]인 경우를 찾으면 되는데, 이때 lower_bound와 upper_bound를 사용했다. lower_bound와 upper_bound는 이분 탐색을 해주는 함수인데, 정렬이 되어있어야 사용이 가능하다. 그래서 앞에서 B를 정렬했다. lower_bound는 찾고싶은 수보다 같거나 큰 인덱스를 반환하고 upper_bound는 찾고싶은 수보다 큰 인덱스를 반환한다. ans에 (upper_bound의 반환값 - lower_bound의 반환값) 을 더해주..
알고리즘
2022. 7. 20. 11:29