Baekjoon Online Judge 30

[c++]2309.일곱난쟁이

https://www.acmicpc.net/problem/2309 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net 내가 푼 해결법의 로직은 우선 입력값을 배열로 받고 선택정렬로 오름차순으로 정렬한 후 9명의 난쟁이들의 입력된 키 값 -100 을 통해 가짜 난쟁이들 두명의 키 값의 합을 구하고 이 합에 해당되는 가짜 난쟁이들의 idx를 알아내서 그 idx를 제외한 배열의 element들을 출력하는 것이다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 2..

[python]1182. 부분수열의 합

N개의 정수로 이루어진 수열이 있을 때, 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하는 문제다. 암생각 없이 하다가 틀렸다. 예제만 보고 아 세 숫자를 골라서 부분수열을 이루는 거구나 라고 혼자 착각을 하고 풀었다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 import sys number, integer = map(int, sys.stdin.readline().split()) #개수와 정수를 받기 num_list = list(map(int, sys.stdin.readline().split())) #정수들 입력 case = 0 #경우의 수 a=0 for b in range(a+1, number-1): #point..

[python]7568. 덩치

사람들의 덩치, 즉 몸무게와 키 둘을 함께 비교하여 순위를 정해 해당 순위를 출력하라는 문제이다. 위의 등수를 살펴보면 다른 이들보다 키와 몸무게 둘 다 큰 C가 1등이고, 키와 몸무게 둘 중 하나라도 다른 사람들 보다 크지 못한다면 어느것이 월등히 크더라도 순위에 이득이 되지 못하는 것을 확인 할 수 있다. 1 2 3 4 5 6 7 8 9 10 bs_li=[] for i in range(int(input())): #키와 몸무게 입력 weight, height= map(int, input().split()) bs_li.append(list([weight, height])) for i in range(len(bs_li)): #순위 rank=1 for j in range(len(bs_li)): if bs_l..

[python]1914.하노이 탑

재귀함수를 사용하는 문제이다. 이 문제는 컴퓨터 과학 분야에서 매우 중요한 문제이니 꼭 숙지해야한다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def hanoi(n, from_pos=1, to_pos=3, aux_pos=2): if n == 1: print(from_pos, to_pos) return hanoi(n-1, from_pos, aux_pos, to_pos) print(from_pos, to_pos) hanoi(n-1, aux_pos, to_pos, from_pos) n=int(input()) if n > 20: print(2**n-1) else: print(2**n-1) hanoi(n) Colored by Color Scripter cs 재귀함수라는 것이 처음에는 이해가..