본문 바로가기

컴퓨터소프트웨어학과41

greedy : 5.모험가 길드 # 5.모험가 길드 n = int(input("모험가가 몇명인지 입력해주세요: ")) x = list(map(int, input("각 모험가의 공포도를 입력해주세요: ").split())) x.sort() group = 0 count = 0 for i in x: count += 1 if count >= i: group += 1 count = 0 print(group) 2022. 5. 29.
greedy : 4. 1이 될 때까지 # 4. 1이 될 때까지 n, k = map(int, input("숫자, 나눠줄 숫자를 입력해주세요: ").split()) bun = 0 while 1: if n == 1: break bun += 1 if n % k != 0: n -= 1 else: n = n/k print(bun)​ 2022. 5. 29.
greedy : 3.숫자 카드 게임 # 3. 숫자 카드 게임 n, m = map(int, input("행의 개수와 열의 개수를 입력해주세요: ").split()) num = [[]for _ in range(n)] for i in range(n): card_list = list(map(int, input("%d행에 들어갈 카드들을 입력해주세요: " % (i+1)).split())) card = card_list for _ in range(3): num[i] = card num[i].sort() for j in range(n): if j+1 == n: break if num[j][0] >= num[j+1][0]: win = num[j][0] else: win = num[j+1][0]​ # 다른 방법 n, m = map(int, input("행.. 2022. 5. 29.
greedy : 2.큰 수의 법칙 # 2. 큰 수의 법칙 n, m, k = map(int, input("배열의 크기, 더해지는 횟수, 연속해서 몇번까지 더할 건지 입력해주세요: ").split()) num = list(map(int, input("수들을 입력해주세요: ").split())) num.sort() print(num) big = num[n-1] big2 = num[n-2] hap = 0 i = 0 while i < m: for _ in range(k): if i == m: break hap += big i += 1 if i == m: break hap += big2 i += 1 print(hap) 2022. 5. 29.