반응형
<코드>
#include<iostream>
#include<algorithm>
using namespace std;
int n, x, ans;
int seq[100001];
int main()
{
int left, right;
cin >> n;
for (int i = 0; i < n; i++) cin >> seq[i];
cin >> x;
sort(seq, seq + n);
left = 0;
right = n - 1;
while (left < right)
{
if (seq[left] + seq[right] == x)
{
ans++;
right--;
}
else if (seq[left] + seq[right] > x)
{
right--;
}
else // (seq[left] + seq[right] < x)
{
left++;
}
}
cout << ans;
}
3273번: 두 수의 합
n개의 서로 다른 양의 정수 a1, a2, ..., an으로 이루어진 수열이 있다. ai의 값은 1보다 크거나 같고, 1000000보다 작거나 같은 자연수이다. 자연수 x가 주어졌을 때, ai + aj = x (1 ≤ i < j ≤ n)을 만족하는
www.acmicpc.net
반응형
'🧩PS > 🥈Nomal' 카테고리의 다른 글
[C/C++] 백준 1806번 - 부분합 (0) | 2021.01.07 |
---|---|
[C/C++] 백준 2470번 - 두 용액 (0) | 2021.01.07 |
[C/C++] 백준 1004번 - 어린 왕자 (0) | 2021.01.06 |
[C/C++] 백준 1010번 - 다리 놓기 (0) | 2021.01.06 |
[C/C++] 백준 13305번 - 주유소 (그리디) (0) | 2021.01.04 |