1253 - 좋다
2025. 2. 22. 20:57ㆍPS/백준
문제
https://www.acmicpc.net/problem/1253
느낀점
응용 투포인터 문제, 문제의 조건을 잘 생각해서 엣지 케이스를 생각해보자. 그것도 연습이다~~
풀이
#include <algorithm>
#include <iostream>
#include <vector>
using namespace std;
int main()
{
int N;
cin >> N;
if (N <= 2)
{
cout << 0;
return 0;
}
vector<long long> arr(N);
for (int i = 0; i < N; i++)
{
cin >> arr[i];
}
sort(arr.begin(), arr.end());
int good = 0;
for (int i = 0; i < N; i++)
{
long long target = arr[i];
vector<long long> temp = arr;
temp.erase(temp.begin() + i);
int start = 0, end = temp.size() - 1;
while (start < end)
{
long long sum = temp[start] + temp[end];
if (sum > target)
{
end--;
}
else if (sum < target)
{
start++;
}
else
{
good++;
break;
}
}
}
cout << good;
return 0;
}
'PS > 백준' 카테고리의 다른 글
24523 - 내 뒤에 나와 다른 수 (0) | 2025.02.24 |
---|---|
1806 - 부분합 (0) | 2025.02.23 |
18114 - 블랙 프라이데이 (0) | 2025.02.19 |
17609 - 회문 (0) | 2025.02.18 |
14921 - 용액 합성하기 (0) | 2025.02.18 |