Notice
Recent Posts
Recent Comments
Link
250x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
Tags
- logistic regression
- docker #도커 #도커 컨테이너 #docker container #도커 우분투
- 파이썬 #Python
- 머신러닝
- 트랜스포머 #자연어처리 #딥러닝 #구글 #attention #self-attention #BERT #transformer #deeplearing
- docker #cuda #docker container #도커 #도커 컨테이너 #쿠다 #cuda 11.3
- jupyter notebook #anaconda #vscode #pytorch #딥러닝 #deep learning #vscode server #서버 vscode #ssh vscode #vscode cuda
- 깃허브 #우분투 #ubuntu #Github #깃허브 우분투 #깃헙 우분투 #깃헙
- Machine Learning
- cuda #centos #cuda삭제 #리눅스 #cenos cuda삭제
- 구름자연어처리과정
- 구름
- GPU #jtorch GPU #파이토치 병렬 #파이토치 GPU #pytorch gpu #multi process torch #horovod
- pandas #folium #groupby #네이버부스트코스 #코칭스터디
- docker #아나콘다 #anaconda #ubuntu anaconda #docker anaconda
- ssh #우분투 ssh #우분터 서버 #도커 #우분투 도커 #docker #cuda #우분투 개발환경 #딥러닝 #ubuntu docker #ubuntu cuda
- 백준
- 알고리즘 #levenshtein distance #편집거리 #edit distance
- BERT #구글BERT #BERT의정석
- 트랜스포머 #transformer #attention #self-attention #어텐션 #인공지능 #AI #딥러닝 #NLP #자연어처리
- docker #우분투 #ubuntu #도커 설치 #docker 설치 #docker installation #우분투 도커
- pytorch #cuda #우분투 torch #ubuntu pytorch #cuda torch #cuda pytorch
- GPU #cuda out of memory #gpu 메모리 #pytorch
- 백준 #알고리즘 #골드
Archives
- Today
- Total
바닥부터 시작하는 개발 공부
[알고리즘]백준 10816번: 숫자 카드2 (python) 본문
728x90
문제
숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 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개의 수에 대해서, 각 수가 적힌 숫자 카드를 상근이가 몇 개 가지고 있는지를 공백으로 구분해 출력한다.
import sys
N = int(sys.stdin.readline().strip())
cards_dict = {}
cards = list(sys.stdin.readline().strip().split(" "))
for card in cards:
if card not in cards_dict.keys():
cards_dict[card] =0
cards_dict[card]+=1
else:
cards_dict[card]+=1
answer = []
M = int(sys.stdin.readline().strip())
ans_cards = list(sys.stdin.readline().strip().split(" "))
for card in ans_cards:
if card not in cards_dict.keys():
answer.append(0)
else:
answer.append(cards_dict[card])
print(" ".join(list(map(str,answer))))
딕셔너리 자료형을 통해 쉽게 해결 가능합니다
중복과 관련된 문제는 딕셔너리 구조를 쓰는게 제일 좋다고 생각합니다
문제에서 조금 이해가 안간건 왜 카드의 갯수와 맞출 카드 갯수를 입력받아야지..?인데
문제에서 넣어주었으니 저도 넣긴했습니다
728x90
'Algorithm > 백준' 카테고리의 다른 글
[알고리즘]백준 1920번: 수 찾기 (0) | 2023.02.04 |
---|---|
[알고리즘]백준 11650번: 좌표 정렬하기 (0) | 2023.01.31 |
[알고리즘]백준 9012번: 괄호 (0) | 2023.01.28 |
[알고리즘]백준 2164번: 카드2 (0) | 2023.01.28 |
[알고리즘]백준 10814번: 나이순 정렬 (0) | 2023.01.26 |
Comments