오늘 공부한 문제들을 정리해보자
25314반 코딩은 체육과목 입니다
그냥 문제가 이해가 안갔던 문제 ㅋㅋ
그냥 4의 배수의 몫만큼 long
으로 출력하고 끝에 int
를 붙이는건데 문제가 장황하게 길어서 햇갈렸다.
print((int(input())//4)*"long " + "int")
입력된 숫자를 4로 나누어서 그 수만큼 long
을 반복하고 끝에 int
를 붙인다
간단함
10807번 갯수세기
입력
첫째 줄에 정수의 개수 N(1 ≤ N ≤ 100)이 주어진다. 둘째 줄에는 정수가 공백으로 구분되어져있다. 셋째 줄에는 찾으려고 하는 정수 v가 주어진다. 입력으로 주어지는 정수와 v는 -100보다 크거나 같으며, 100보다 작거나 같다.
출력
첫째 줄에 입력으로 주어진 N개의 정수 중에 v가 몇 개인지 출력한다.
해서 답은
n = int(input())
a = list(map(int, input().split()))
print(a.count(int(input())))
그대로 첫줄에 숫자를 받고 둘째줄에 여러개의 숫자를 리스트형태로 a에 담고
다음 수를 입력받는데 그 숫자가 있는 갯수를 출력해준다.
이건 count()
라는 Method
를 사용했다
다음
10871반 X보다 작은 수
문제
정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.
n, x = map(int, input().split())
print(*([num for num in list(map(int, input().split())) if num < x]))
해석하자면 두 수를 먼저 입력받는다
둘째줄에 숫자 여러개를 받고 이를 num
안에 넣어서 for
문으로 돌린다. 그리고 그 수들중 x에 입력한 수보다 작을경우 출력하는데 *
로 사이에 공백을 준다
이걸 lambda
와 filter
로 좀더 줄일 수 있다.
n, x = map(int, input().split())
print(*(filter(lambda num: num < x, map(int, input().split()))))
동일하게 수들을 담는데 map()
으로 정수형으로 변환하고 lambda
로 x보다 작은지 검사하고 filter
로 걸러내서 출력한다.
lambda
를 계속 사용해보면서 익숙해져야겠다.
끝