[Python] 백준알고리즘 #2845

r1verfuture·2022년 1월 31일
0

백준알고리즘

목록 보기
105/110

📝 문제

파티가 끝나고 나면, 사람들은 누가 파티에 왔는지와 얼마나 많은 사람들이 왔는지를 궁금해한다. 보통 파티는 매우 크게 열리기 때문에, 정확하게 몇 명이 참가했는지 알 수가 없다.
지난주 토요일에 상근이는 자신의 3학년 진학을 기념하면서 매우 성대한 파티를 열었다. 그리고, 상근이는 1m2당 몇 명의 사람이 있었는지 알고있다.
상근이의 파티는 정말 엄청난 규모였기 때문에, 대부분의 신문에도 기사가 실렸다. 상근이는 서로 다른 5개의 신문을 보면서 그 기사에 적혀져있는 참가자의 수를 적었다.
상근이는 자신이 알고있는 참가자의 수가 정확하다고 생각한다. 각 신문 기사에 실려있는 참가자의 수가 몇 명 만큼 잘못되어있는지 구하는 프로그램을 작성하시오.

⌨️ 입력

첫째 줄에 1m2당 사람의 수 L (1 ≤ L ≤ 10)과 파티가 열렸던 곳의 넓이 P (1 ≤ P ≤ 1000)가 주어진다.
둘째 줄에는 각 기사에 실려있는 참가자의 수가 주어진다. 106보다 작은 양의 정수 5개가 주어진다.

🖨 출력

출력은 첫째 줄에 다섯 개의 숫자를 출력해야 한다. 이 숫자는 상근이가 계산한 참가자의 수와 각 기사에 적혀있는 참가자의 수의 차이이다.

⌨️ 예제 입력 1

1 10
10 10 10 10 10

🖨 예제 출력 1

0 0 0 0 0

⌨️ 예제 입력 2

5 20
99 101 1000 0 97

🖨 예제 출력 2

-1 1 900 -100 -3

📚 내가 제출한 코드

import sys
l, p = map(int, sys.stdin.readline().split())
total = l * p
report = list(map(int, sys.stdin.readline().split()))
for i in range(5):
    report[i] -= total
print(*report)

✏️ 내가 제출한 코드에 대한 설명

  • sys.stdin.readline() : 키보드로 입력한 값을 받는 함수 (기존의 input() 보다 속도가 훨씬 빠르다.)
  • a.split() : a를 빈칸 단위로 쪼개서 반환하는 함수
  • map(a, b) : b의 원소 하나하나를 a에 대입한 것을 반환하는 함수
  • range(a) : 0부터 a-1까지의 정수를 반환하는 함수
  • print(*a) : a를 한칸씩 띄워가며 원소 하나씩 출력한다.
  • 메모리 : 30864 KB
  • 시간 : 80 ms
  • 코드 길이 : 181 B
profile
#iOS #Swift #Developer #Python

0개의 댓글