본문 바로가기
반응형

알고리즘/그리디30

[백준][Python] 1213번 팰린드롬 만들기 1213번: 팰린드롬 만들기첫째 줄에 문제의 정답을 출력한다. 만약 불가능할 때는 "I'm Sorry Hansoo"를 출력한다. 정답이 여러 개일 경우에는 사전순으로 앞서는 것을 출력한다.www.acmicpc.net 코드 from collections import Countername = list(map(str,input()))name.sort()count = Counter(name)odd = 0odd_alpha = ''ans = ''for i in count: if count[i] % 2 != 0: odd += 1 odd_alpha += i for _ in range(count[i]//2): ans += iif odd > 1: print("I'm Sorry Hansoo")elif odd == 0:.. 2023. 1. 20.
[백준][Python] 1049번 기타줄 1049번: 기타줄 첫째 줄에 N과 M이 주어진다. N은 100보다 작거나 같은 자연수이고, M은 50보다 작거나 같은 자연수이다. 둘째 줄부터 M개의 줄에는 각 브랜드의 패키지 가격과 낱개의 가격이 공백으로 구분하여 주 www.acmicpc.net 코드 n, m = map(int,input().split()) p_list = [] o_list = [] for _ in range(m): pack,one = map(int,input().split()) p_list.append(pack) o_list.append(one) p_min = min(p_list) o_min = min(o_list) m_num = min(p_min,o_min*6) ans = 0 ans += (n // 6) * m_num ans +=.. 2022. 11. 8.
[백준][Python] 2012번 등수 매기기 2012번: 등수 매기기 첫째 줄에 자연수 N이 주어진다. (1 ≤ N ≤ 500,000) 둘째 줄부터 N개의 줄에 걸쳐 각 사람의 예상 등수가 순서대로 주어진다. 예상 등수는 500,000 이하의 자연수이다. www.acmicpc.net 코드 import sys n = int(input()) n_list = [] ans = 0 rank = 1 for _ in range(n): n_list.append(int(sys.stdin.readline())) n_list.sort() for i in n_list: ans += abs(i-rank) rank += 1 print(ans) 설명 사람들의 예상 등수를 오름차순으로 정렬하여 1부터 차례대로 등수를 매긴다. 2022. 11. 3.
[백준][Python] 수들의 합 1789번: 수들의 합 첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다. www.acmicpc.net 코드 s = int(input()) num = 0 ans = 0 while ans 2022. 11. 1.
반응형