문제
정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)
둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.
출력
X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다.
예제 입력 1
10 5
1 10 4 9 2 3 8 5 7 6
예제 출력 1
1 4 2 3
N,X = map(int,input().split())# N 개수, X 입력
A = [0]*N
B = []
A = map(int,input().split())
for i in A: # 수열 A에서 X 보다 작은 정수 출력
if i<X:
B.append(i)
print(B[:])
틀린 풀이이다.
배운 개념
여러 개의 정수를 한 줄에 입력할 때 map을 이용한다.
리스트에 여러개의 정수를 넣고 싶을 때 : list(map(int, input().split()))
1차원 리스트 만드는 법 :
a = [0 for _ in range(10)]
a = [0]*10
틀린 이유
출력을 요소만 나오는 한 줄로 나타내고 싶어서 해맸다.
리스트의 대괄호를 제거하려고 하였으나, 대괄호를 제거하려면 문자열로 변환 후 제거가 가능하다.
n, x = map(int, input().split())
Arr = list(map(int, input().split()))
for i in Arr:
if i < x:
print(i)
'⏰ 코딩테스트 > 백준 알고리즘' 카테고리의 다른 글
백준 알고리즘 - 2447 - 별찍기 (0) | 2021.01.12 |
---|---|
백준 알고리즘 - 2630 - 색종이 만들기 (0) | 2021.01.11 |
백준 알고리즘 - 10039 - 평균 점수 (0) | 2020.07.22 |
백준 알고리즘 - 1110 (0) | 2020.07.21 |
백준 알고리즘 - 10951 (0) | 2020.07.21 |