본문 바로가기
이론/코딩테스트

[백준] 2467번 용액 (투포인터 알고리즘)

by 퇴근후개발 2022. 7. 30.
반응형

-문제

 

-코드

#include<stdio.h>
#include<vector>
#include<stdlib.h>
using namespace std;

int main()
{
	int n;
	scanf("%d", &n);
	vector<int> a(n);
	for(int i =0; i<n; i++)
	{
		scanf("%d", &a[i]);
	}

	int p1 = 0, p2 = n - 1, sum, res;
	int o1, o2;
	res = a[p1] + a[p2];
	o1 = a[p1];
	o2 = a[p2];
	while (p1<p2)
	{
		sum = a[p1] + a[p2];
		if (abs(res) >= abs(sum))
		{
			res = sum;
			o1 = a[p1];
			o2 = a[p2];	
		}
		if(sum > 0) p2--;
		else p1++;
	}

	printf("%d %d", o1, o2);
	return 0;
}
반응형