10815๋ฒ: ์ซ์ ์นด๋
์ฒซ์งธ ์ค์ ์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋ ์ซ์ ์นด๋์ ๊ฐ์ N(1 ≤ N ≤ 500,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ์ซ์ ์นด๋์ ์ ํ์๋ ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ซ์ ์นด๋์ ์ ํ์๋ ์๋ -10,000,000๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 10,
www.acmicpc.net
๋ฌธ์
์ซ์ ์นด๋๋ ์ ์ ํ๋๊ฐ ์ ํ์ ธ ์๋ ์นด๋์ด๋ค. ์๊ทผ์ด๋ ์ซ์ ์นด๋ N๊ฐ๋ฅผ ๊ฐ์ง๊ณ ์๋ค. ์ ์ M๊ฐ๊ฐ ์ฃผ์ด์ก์ ๋, ์ด ์๊ฐ ์ ํ์๋ ์ซ์ ์นด๋๋ฅผ ์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋์ง ์๋์ง๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋ ์ซ์ ์นด๋์ ๊ฐ์ N(1 ≤ N ≤ 500,000)์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ ์ซ์ ์นด๋์ ์ ํ์๋ ์ ์๊ฐ ์ฃผ์ด์ง๋ค. ์ซ์ ์นด๋์ ์ ํ์๋ ์๋ -10,000,000๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 10,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค. ๋ ์ซ์ ์นด๋์ ๊ฐ์ ์๊ฐ ์ ํ์๋ ๊ฒฝ์ฐ๋ ์๋ค.
์ ์งธ ์ค์๋ M(1 ≤ M ≤ 500,000)์ด ์ฃผ์ด์ง๋ค. ๋ท์งธ ์ค์๋ ์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋ ์ซ์ ์นด๋์ธ์ง ์๋์ง๋ฅผ ๊ตฌํด์ผ ํ M๊ฐ์ ์ ์๊ฐ ์ฃผ์ด์ง๋ฉฐ, ์ด ์๋ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถ๋์ด์ ธ ์๋ค. ์ด ์๋ -10,000,000๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 10,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๋ค
์ถ๋ ฅ
์ฒซ์งธ ์ค์ ์ ๋ ฅ์ผ๋ก ์ฃผ์ด์ง M๊ฐ์ ์์ ๋ํด์, ๊ฐ ์๊ฐ ์ ํ ์ซ์ ์นด๋๋ฅผ ์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์์ผ๋ฉด 1์, ์๋๋ฉด 0์ ๊ณต๋ฐฑ์ผ๋ก ๊ตฌ๋ถํด ์ถ๋ ฅํ๋ค.
์์ ์ ๋ ฅ
5
6 3 2 10 -10
8
10 9 -5 2 3 4 5 -10
์์ ์ถ๋ ฅ
1 0 0 1 1 0 0 1
์ค๋ช
m์นด๋๊ฐ ์ฃผ์ด์ง n์นด๋์ ์๋์ง ์๋์ง ํ์ธํ๋ ๋ฌธ์ ์ด๋ค. ์์ผ๋ฉด 1์, ์์ผ๋ฉด 0์ ๋ฐํํ๋ค.
ํ์ด
- binary_search(arr_begin,arr_end,find_value) : ์ฐพ๋ ๊ฐ์ด ์กด์ฌํ๋ฉด True, ์๋๋ฉด False๋ฅผ ๋ฆฌํด
- sort(start, end) : ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ์ ํ๋ค.
- ์ด๋ถ ํ์์ ํ๊ธฐ ์ ์ ์ฐ์ ์ ๋ ฌ์ ํด์ผ ํ๋ค. ๋ฐ๋ผ์ ์ด๋ถํ์์ ํ ๋ฐฐ์ด์ sort()ํจ์๋ฅผ ์ด์ฉํด ์ ๋ ฌํ๋ค.
- binary_search() ํจ์๋ฅผ ์ด์ฉํด ์ฐพ๊ณ ์ ํ๋ ๊ฐ์ด ์์ผ๋ฉด 1์ ๋ํ๊ณ ์๋๋ฉด 0์ ์ ์ฅํ๋ค.
Solution
#include <iostream>
#include <algorithm> //binary_search ํจ์ ์ด์ฉ
using namespace std;
#define MAX 500000
long long N, n[MAX], M, m[MAX], result[MAX] = {0,};
int main() {
cin >> N;
for(int i=0; i<N; i++)
cin >> n[i];
sort(n, n + N);
cin >> M;
for(int i=0; i<M; i++){
cin >> m[i];
if(binary_search(n, n+N, m[i]))
result[i] += 1;
else
result[i] = 0;
}
for(int i=0; i<M; i++)
cout << result[i] << " ";
return 0;
}'๐งฉ Algorithm > [BOJ] Silver' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| BOJ 10816๋ฒ : ์ซ์ ์นด๋ 2 (C++, Python/Silver 4) (0) | 2022.09.18 |
|---|---|
| BOJ 1654๋ฒ : ๋์ ์๋ฅด๊ธฐ (C++/Silver 2) (0) | 2022.09.18 |
| BOJ 1094๋ฒ : ๋ง๋๊ธฐ (C++/Silver 5) (0) | 2022.09.05 |
| BOJ 1158๋ฒ : ์์ธํธ์ค ๋ฌธ์ (C++/Silver 4) (0) | 2022.09.03 |
| BOJ 2805๋ฒ : ๋๋ฌด ์๋ฅด๊ธฐ (C/Silver 2) (0) | 2022.07.22 |