본문 바로가기
파이썬/baekjoon.py

[10871] X보다 작은 수 (수학, 구현)

by 로토마 2021. 6. 28.

문제

정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.

입력

첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)

둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.

출력

X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다.

 

문제풀이 및 코드

입력 받을 때 한 줄에 입력하는 방식으로 변수를 저장 해야 한다면,

.split()을 사용한다.

 --> 공백을 기준으로 변수를 저장함.

 

리스트 또한 한 줄에 입력하는 방식으로 변수를 저장해야 한다면,

 

x = input().split()    # input().split()의 결과는 문자열 리스트

m = map(int, x)        # 리스트의 요소를 int로 변환, 결과는 맵 객체

a, b = m               # 맵 객체는 변수 여러 개에 저장할 수 있음

 

이러한 원리로

m = list(map(int, input().split()))

이렇게 사용할 수 있다.

 

또 출력시 줄바꿈 없이 출력하려면

end =" " 를 print문 뒤에 써줌으로써

줄바꿈 없이 출력할 수 있다.

 

 

코드)

 

N, X = input("").split() // 한 줄에 변수 입력 받기 위한 .split()

 

//int형 변수로 바꾸기
N = int(N) 
X = int(X)

 

//리스트 선언
num = []

num = list(map(int, input().split())) // 한 줄에 변수 입력 받기 위한 .split(), map

 

//for 문 사용해 작은 지 대소비교 후 출력

for i in range(N):
    if(num[i] < X):
        print(num[i] ,end=" ") //end=" " 줄바꿈 없이 출력