본문 바로가기
1055: 판 채우기 Link : judge.koreatech.ac.kr/problem.php?id=1055 1. 문제 3 * N 의 판이 있습니다. 이 판을 1 * 1 짜리 블럭과 2 * 2 블럭들을 이용해서 빈틈없이 채우려고 합니다. 길이 N이 주어 졌을 때, 몇 가지 방법으로 채울 수 있는지 구해 주세요. 2. 문제의 조건 1 2020. 12. 11.
KOREATECH 1055: 판채우기 Link : judge.koreatech.ac.kr/problem.php?id=1055 Python 더보기 1 2 3 4 5 6 7 8 9 10 11 12 x = int(input()) for i in range(x): n = int(input()) d = [0] * 101 d[1] = 1 d[2] = 3 for i in range(3, n+1): d[i] = (d[i-1] + 2 * d[i-2]) % 1000000007 print(d[n]) Colored by Color Scripter cs FeedBack cjw.git@gmail.com 2020. 12. 11.
1047: 몇 가지 음악을 듣고 있을까 Link : judge.koreatech.ac.kr/problem.php?id=1047 1. 문제 평소 음악을 즐겨듣는 한기인은 닥치는 대로 음악을 모아 두었습니다(물룬 굿 다운로더 입니다 훗훗). 어느날 음악을 듣는데 자꾸 같은 음악이 여러번 반복되는걸 알게 되었습니다. 닥치는 대로 음악을 받다보니 같은 음악도 여러개 받아 두었던 거죠. 기인이는 가지고 있는 음악이 몇가지 인지 알고 싶어했습니다. 이번에 정리하고 다음부터는 같은 음악은 최대한 받지 않기 위해서이기도 하지요. 문제를 간단히 하기 위해 음악은 숫자로 주어지고, 같은 숫자는 같은 음악을 의미합니다. 한기인이 가지고 있는 음악이 주어졌을때, 중복을 제거하면 총 몇가지의 음악을 가지고 있는지 알려주세요. 2. 문제의 조건 1 2020. 12. 11.
KOREATECH 1047: 몇 가지 음악을 듣고 있을까 Link : judge.koreatech.ac.kr/problem.php?id=1047 Python 더보기 1 2 3 4 5 6 7 8 9 10 from sys import stdin dp = dict() case_cnt = int(stdin.readline().strip()) for _ in range(case_cnt): data = int(stdin.readline().strip()) dp[data] = 0 print(len(dp)) cs FeedBack cjw.git@gmail.com 2020. 12. 11.
1035: 최소 이동거리 Link : judge.koreatech.ac.kr/problem.php?id=1035 1. 문제 수업과 동아리 활동과 과제로 바쁜 한기대 생들은 조별모임을 좀더 효율적으로 하고 싶어 합니다. 조별 모임을 하기 위해서는 조원이 모두가 모임 장소로 이동을 해야 하는데, 전체가 이동하는 이동 거리의 합을 최소로 하고 싶습니다. 문제를 간단하게 하기 위해서 우리가 1차원 직선상에 있다고 가정을 해보죠. 만약 위치가 1, 4, 10 에 있다고 한다면, 1의 위치로 모이면 총 이동거리는 0 + 3 + 9 = 12 가 되며, 4의 위치로 모이면 3 + 0 + 6 = 9 가 됩니다. 10으로 모여도 9보다 크며 다른지점 (2, 3, 5, 6, 7, 8, 9) 로 모여도 9보다는 더 많은 거리를 이동해야 합니다. 2... 2020. 12. 11.