기초 프로그래밍/Python 68

[백준] 10813번 파이썬 python(공 바꾸기)

▷ 문제 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다. 도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다. 공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지 구하는 프로그램을 작성하시오. ▷ 전체 코드 N, M = map(int, input().split()) X = [] for i in range(N): X.append(i+1) for _ in range(M): i, j = map(int, input().split()) X[i-1]..

[백준] 10810번 파이썬 python(공 넣기)

▷ 문제 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이 들어있지 않으며, 바구니에는 공을 1개만 넣을 수 있다. 도현이는 앞으로 M번 공을 넣으려고 한다. 도현이는 한 번 공을 넣을 때, 공을 넣을 바구니 범위를 정하고, 정한 바구니에 모두 같은 번호가 적혀있는 공을 넣는다. 만약, 바구니에 공이 이미 있는 경우에는 들어있는 공을 빼고, 새로 공을 넣는다. 공을 넣을 바구니는 연속되어 있어야 한다. 공을 어떻게 넣을지가 주어졌을 때, M번 공을 넣은 이후에 각 바구니에 어떤 공이 들어 있는지 구하는 프로그램을 작성하시오. ▷ 전체 코드 N, M = map(i..

[백준] 2562번 파이썬 python(최댓값)

▷ 문제 9개의 서로 다른 자연수가 주어질 때, 이들 중 최댓값을 찾고 그 최댓값이 몇 번째 수인지를 구하는 프로그램을 작성하시오. 예를 들어, 서로 다른 9개의 자연수 3, 29, 38, 12, 57, 74, 40, 85, 61 이 주어지면, 이들 중 최댓값은 85이고, 이 값은 8번째 수이다. ▷ 전체 코드 X = [int(input()) for i in range(9)] print(max(X)) print(X.index(max(X))+1) ▷ 코드 분석 X = [int(input()) for i in range(9)] 리스트 X에 엔터로 구분한 9개의 정수를 입력한다.for 문을 사용해 9번 반복하고, input() 함수를 사용해서 요소를 문자열로 입력받고 int() 함수를 사용해서 입력받은 문자열..

[백준] 10818번 파이썬 python(최소, 최대)

▷ 문제 N개의 정수가 주어진다. 이때, 최솟값과 최댓값을 구하는 프로그램을 작성하시오. ▷ 전체 코드 N = int(input()) X = list(map(int, input().split())) print(min(X), max(X)) ▷ 코드 분석 N = int(input()) 변수 N에 입력받을 정수의 개수를 입력한다. input() 함수를 사용해 입력받은 문자열을 int() 함수를 사용해 정수형으로 바꿔준다. X = list(map(int, input().split())) 리스트 X에 N개의 정수를 공백으로 구분해서 한 줄로 입력한다. input().split() 함수를 사용해 입력받은 요소를 공백을 기준으로 나눠준다. map() 함수를 이용해 입력받은 요소들을 각각 지정된 함수인 int()에 넣..

[백준] 10871번 파이썬 python(X보다 작은 수)

▷ 문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. ▷ 전체 코드 N, X = map(int, input().split()) A = list(map(int, input().split())) for i in A: if i < X: print(i, end=" ") ▷ 코드 분석 N, X = map(int, input().split()) 변수 N에는 입력할 정수의 개수를, X에는 기준이 되는 정수를 입력한다. map() 함수를 이용해서 리스트나 튜플의 요소에 지정된 함수를 적용한다. input() 함수로 입력 받은 요소를 문자열로 변수에 저장한다. split() 함수를 사용해서 입력 받은 문자열을 나눠준다. int() 함수는 문자..

[백준] 10807번 파이썬 python(개수 세기)

▷ 문제 총 N개의 정수가 주어졌을 때, 정수 v가 몇 개인지 구하는 프로그램을 작성하시오. ▷ 전체 코드 N = int(input()) N_list = list(map(int, input().split())) v = int(input()) print(N_list.count(v)) ▷ 코드 분석 N = int(input()) 변수 N에 입력 받을 정수의 개수를 입력한다. input() 함수는 입력 받은 요소를 문자열로 변수에 저장한다. int() 함수는 입력 받은 문자열을 정수형으로 바꿔준다. N_list = list(map(int, input().split())) 변수 N_list에 리스트 형태로 입력 받을 정수들을 공백으로 구분하여 입력한다. list() 함수를 이용해서 리스트를 만들어준다. map(..

[백준] 10951번 파이썬 python(A+B - 4)

▷ 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. ▷ 전체 코드 while 1: try: A, B = map(int, input().split()) print(A+B) except: break ▷ 코드 분석 while 1: try: A, B = map(int, input().split()) print(A+B) except: break while 문을 사용해 무한으로 반복되는 반복문을 만든다. try-except 문을 사용한다. try 블록 수행 중 오류가 발생하면 except 블록이 수행되고, try 블록에서 오류가 발생하지 않으면 except 브록은 수행되지 않는다. try: A, B = map(int, input().split()) print(A+B) map() 함..

[백준] 10952번 파이썬 python(A+B - 5)

▷ 문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. ▷ 전체 코드 while 1: A, B = map(int, input().split()) if A == 0 and B == 0: break else: print(A+B) ▷ 코드 분석 while 1: A, B = map(int, input().split()) if A == 0 and B == 0: break else: print(A+B) while문을 사용해서 무한으로 반복되는 반복문을 만들었다. map() 함수는 입력 받은 요소를 지정한 함수에 적용시키는 함수이다. input() 함수를 사용해서 요소를 입력 받아 문자열로 변수에 넣어준다. 그리고 split() 함수를 통해 입력 받은 문자열을 A와 B로 나눠준 후 in..

[백준] 2439번 파이썬 python(별 찍기 - 2)

▷ 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오. ▷ 전체 코드 N = int(input()) for i in range(1, N+1): print(" " * (N-i), "*" * i, sep="") ▷ 코드 분석 N = int(input()) 변수 N에 별의 개수를 입력한다. input() 함수를 사용해서 입력 받은 요소를 문자열로 변수에 저장한다. int() 함수를 사용해서 입력 받은 문자열을 정수형으로 변환해준다. for i in range(1, N+1): print(" " * (N-i), "*" * i, sep="") for문과 range() 함수를 사용해서 N번 반복하는 반복문을 만든다. ..

[백준] 2438번 파이썬 python(별 찍기 - 1)

▷ 문제 첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 ▷ 전체 코드 N = int(input()) for i in range(1, N+1): print("*" * i) ▷ 코드 분석 N = int(input()) 변수 N에 출력할 별의 개수를 입력한다. input() 함수를 사용해서 입력 받은 요소를 문자열로 변수에 저장한다. int() 함수를 사용해서 입력 받은 문자열을 정수형으로 바꿔준다. for i in range(1, N+1): print("*" * i) for 문과 range() 함수를 사용해서 N번 반복하는 반복문을 만든다. 별에 i를 곱해줘서 1부터 N까지 차례대로 별의 개수를 늘려서 출력한다.