-
백준 14921 - 용액 합성하기 ,C++쾌락없는 책임 (공부)/알고리즘 문제풀이 2021. 9. 19. 12:03반응형
#include <iostream> #include <vector> #include <algorithm> using namespace std; int n; int main(){ scanf("%d", &n); vector<int> liquid(n); for(int i = 0; i < n; i++) scanf("%d", &liquid[i]); // pointer int left = 0; int right = n - 1; int result = 2100000000; // solution while(left < right){ int liq1 = liquid[left]; int liq2 = liquid[right]; if(abs(liq1 + liq2) < abs(result)) result = liq1 + liq2; if(liq1 + liq2 < 0) left++; else right--; } printf("%d\n", result); }
쉬운 두 포인터 알고리즘이었습니다.
반응형'쾌락없는 책임 (공부) > 알고리즘 문제풀이' 카테고리의 다른 글
백준 1300 - K번째 수, C++, 이분탐색 (0) 2021.09.21 백준 1644 - 소수의 연속합, C++, 에라토스테네스의 채, 두 포인터 (0) 2021.09.20 13975 백준 - 파일 합치기 3, C++, 우선순위 큐 (0) 2021.09.18 1647 백준 - 도시 분할 계획, C++, 크루스칼 알고리즘 (0) 2021.09.17 11003 백준 최솟값 찾기 - C++, 덱 (0) 2021.09.16