728x90
https://www.acmicpc.net/problem/2845
✅내가 푼 코드
#파티가 끝나고 난 뒤
#첫째 줄에 1m^2당 사람 수 L, 파티가 열렸던 곳 넓이 P 주어짐
#둘 째 줄에는 참가자 수가 주어짐.
#다섯 개의 숫자를 출력해야함.
#상근이가 계산한 참가자 수와 각 기사에 적혀있는 참가자 수의 차이를 출력.
#sudo - 1m^2당 사람 수니까,L*P를 하면 참가자수를 알 수 있다.
party = list(map(int,input().split()))
L = party[0] #1m^2당 사람 수
P = party[1] #넓이
num = L*P #참가자 수
article = list(map(int,input().split()))
items = ''
for index,item in enumerate(article):
if not index == 5:
items = items + str(item-num)+" "
else:
items = items + str(item-num)
print(items)
✅최적화 코드
# 입력을 받아서 1m^2당 사람 수 L과 파티가 열렸던 곳의 넓이 P를 추출합니다.
L, P = map(int, input().split())
# 참가자 수를 계산합니다.
num = L * P
# 기사에 적힌 참가자 수를 입력받습니다.
articles = list(map(int, input().split()))
# 계산한 참가자 수와 각 기사에 적힌 참가자 수의 차이를 구합니다.
differences = [str(article - num) for article in articles]
# 차이를 공백으로 구분하여 출력합니다.
print(" ".join(differences))
💡내 풀이와 차이점
1. L, P를 한 번에 map으로 받는다.
2. 리스트 컴프리헨션으로 differences를 리스트로 만든다.
articles을 순회하며 str(article-num)으로 표현해서 리스트에 담는다.
3. 리스트에 join메서드를 이용해서 출력한다.
🤔느낀점
정말 오랜만에 코테를 푸니까 기본적인 문법도 다 까먹고 감을 다 잃었다.
오늘부터 1일 1코테를 실천해봐야겠다.
노트북 항상 끼고 살아야지!
728x90
'알고리즘&자료구조 > Algorithm' 카테고리의 다른 글
백준 1085 - 직사각형에서 탈출 (0) | 2024.05.19 |
---|---|
백준 10808 - 알파벳 개수 (0) | 2024.05.18 |
프로그래머스 12973 - 짝지어 제거하기 (0) | 2024.04.26 |
프로그래머스 64065 - 튜플 (1) | 2024.04.26 |
프로그래머스 12930 - 이상한 문자 만들기 (0) | 2024.04.24 |