๐ฅSilver 5
https://www.acmicpc.net/problem/10815

โ 1์ฐจ ํ์ด
import sys
input=sys.stdin.readline
answer=''
n=int(input())
having_cards=set(map(int,input().rstrip().split()))
m=int(input())
num_list=list(map(int,input().rstrip().split()))
for num in num_list:
if num in having_cards:
answer+='1'
else:
answer+='0'
print(' '.join(answer))
input์ ๋ฒ์๊ฐ 10^7์ผ๋ก ์ด๋ถํ์์ ํด์ผํ๋ ํ์ง๋ง, ์ผ๋จ ํ๋ฒ ์ ์งํ๊ฒ ํ์ด๋ณด์๋ค.
์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋ ์นด๋๊ฐ ์ค๋ณต์ด ์์์๋ ์๊ณ , num_list์ ์ซ์๊ฐ ์ผ์นํ๋์ง ํ์ธํ๋ฉด ๋๊ธฐ ๋๋ฌธ์, set์ ์ฌ์ฉํด์ ์ค๋ณต์ ์ ๊ฑฐํด์ ๋จ์ํ๊ฒ in์ฐ์ฐ์๋ก ํ์ธํ๋ ์์ ์ผ๋ก, ๊ฐ๋จํ๊ฒ ๋ต์ ๊ตฌํ ์ ์์๋ค.
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
121544KB | 5336ms |
์ฌํ ๋ฐฑ์ค ๋ฌธ์ ํ๋ฉด์, ๋ณธ ์์น ์ค ๊ฐ์ฅ ๋๊ฒ ๋์จ๊ฒ ๊ฐ๋ค.....
โจ join์ด O(n) ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ธฐ ๋๋ฌธ์, printe(1, end=' ')๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
125620 | 612ms |
โ ์ด๋ถ ํ์ ํ์ด
import sys
input=sys.stdin.readline
def binary_search(arr,target):
left=0
right=len(arr)-1
while left<=right:
mid=(left+right)//2
if arr[mid]==target:
return True
elif arr[mid]<target:
left=mid+1
else:
right=mid-1
return False
answer=''
n=int(input())
having_cards=sorted(map(int,input().rstrip().split()))
m=int(input())
num_list=list(map(int,input().rstrip().split()))
for num in num_list:
if binary_search(having_cards,num):
print(1, end=' ')
else:
print(0, end=' ')
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
108244KB | 1756ms |
'๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค-Python] ํดํน : 10282๋ฒ (1) | 2024.06.14 |
---|---|
[๋ฐฑ์ค-Python] ์ต๋จ๊ฒฝ๋ก : 1753๋ฒ (๋ค์ต์คํธ๋ผ ์ต๋จ ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆ) (1) | 2024.06.14 |
[๋ฐฑ์ค-Python] ๊ฑฐ๋ถ์ด : 8911๋ฒ (1) | 2024.06.13 |
[๋ฐฑ์ค-Python] ์๊ธฐ์์ด2 : 17086๋ฒ (0) | 2024.06.13 |
[๋ฐฑ์ค-Python] ํน : 1063๋ฒ (1) | 2024.06.12 |
๐ฅSilver 5
https://www.acmicpc.net/problem/10815

โ 1์ฐจ ํ์ด
import sys
input=sys.stdin.readline
answer=''
n=int(input())
having_cards=set(map(int,input().rstrip().split()))
m=int(input())
num_list=list(map(int,input().rstrip().split()))
for num in num_list:
if num in having_cards:
answer+='1'
else:
answer+='0'
print(' '.join(answer))
input์ ๋ฒ์๊ฐ 10^7์ผ๋ก ์ด๋ถํ์์ ํด์ผํ๋ ํ์ง๋ง, ์ผ๋จ ํ๋ฒ ์ ์งํ๊ฒ ํ์ด๋ณด์๋ค.
์๊ทผ์ด๊ฐ ๊ฐ์ง๊ณ ์๋ ์นด๋๊ฐ ์ค๋ณต์ด ์์์๋ ์๊ณ , num_list์ ์ซ์๊ฐ ์ผ์นํ๋์ง ํ์ธํ๋ฉด ๋๊ธฐ ๋๋ฌธ์, set์ ์ฌ์ฉํด์ ์ค๋ณต์ ์ ๊ฑฐํด์ ๋จ์ํ๊ฒ in์ฐ์ฐ์๋ก ํ์ธํ๋ ์์ ์ผ๋ก, ๊ฐ๋จํ๊ฒ ๋ต์ ๊ตฌํ ์ ์์๋ค.
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
121544KB | 5336ms |
์ฌํ ๋ฐฑ์ค ๋ฌธ์ ํ๋ฉด์, ๋ณธ ์์น ์ค ๊ฐ์ฅ ๋๊ฒ ๋์จ๊ฒ ๊ฐ๋ค.....
โจ join์ด O(n) ์๊ฐ๋ณต์ก๋๋ฅผ ๊ฐ์ง๊ธฐ ๋๋ฌธ์, printe(1, end=' ')๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
125620 | 612ms |
โ ์ด๋ถ ํ์ ํ์ด
import sys
input=sys.stdin.readline
def binary_search(arr,target):
left=0
right=len(arr)-1
while left<=right:
mid=(left+right)//2
if arr[mid]==target:
return True
elif arr[mid]<target:
left=mid+1
else:
right=mid-1
return False
answer=''
n=int(input())
having_cards=sorted(map(int,input().rstrip().split()))
m=int(input())
num_list=list(map(int,input().rstrip().split()))
for num in num_list:
if binary_search(having_cards,num):
print(1, end=' ')
else:
print(0, end=' ')
๋ฉ๋ชจ๋ฆฌ | ์๊ฐ |
108244KB | 1756ms |
'๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค-Python] ํดํน : 10282๋ฒ (1) | 2024.06.14 |
---|---|
[๋ฐฑ์ค-Python] ์ต๋จ๊ฒฝ๋ก : 1753๋ฒ (๋ค์ต์คํธ๋ผ ์ต๋จ ๊ฒฝ๋ก ์๊ณ ๋ฆฌ์ฆ) (1) | 2024.06.14 |
[๋ฐฑ์ค-Python] ๊ฑฐ๋ถ์ด : 8911๋ฒ (1) | 2024.06.13 |
[๋ฐฑ์ค-Python] ์๊ธฐ์์ด2 : 17086๋ฒ (0) | 2024.06.13 |
[๋ฐฑ์ค-Python] ํน : 1063๋ฒ (1) | 2024.06.12 |