목록Algorithm (89)
촉촉한초코칩
문제동수는 제과점에 과자를 사러 가는데 현재 가진 돈이 모자랄 경우 부모님께 모자란 돈을 받으려고 한다. 과자 한 개의 가격이 K, 사려고 하는 과자의 개수가 N이고, 현재 가진 돈의 액수를 M이라 할 때 여러분은 동수가 부모님께 받아야 하는 모자란 돈을 계산하려고 한다. 예를 들어, 과자 한 개의 가격이 30원, 사려고 하는 과자의 개수가 4개, 현재 동수가 가진 돈이 100원이라 할 때, 동수가 부모님께 받아야 하는 돈은 20원이다. 과자 한 개의 가격이 250원, 사려고 하는 과자의 개수가 2개, 현재 동수가 가진 돈이 140원이라 할 때, 동수가 부모님께 받아야 하는 돈은 360원이다. 과자 한 개의 가격이 20원, 사려고 하는 과자의 개수가 6개, 현재 동수가 가진 돈이 120원이라 할 때 동수..

문제서로 다른 N개의 자연수의 합이 S라고 한다. S를 알 때, 자연수 N의 최댓값은 얼마일까?입력첫째 줄에 자연수 S(1 ≤ S ≤ 4,294,967,295)가 주어진다.출력첫째 줄에 자연수 N의 최댓값을 출력한다.문제점. N이 연속된 수가 아니라면 자연수의 합인 S을 어떻게 찾을 것인지?GPT한테 물어보니까 작은수부터 더해서 S를 찾으라고 함..200이 없는.. 불상사가 발생함 입력받은 수부터 값을 빼기로 함반대로 해도 마찬가지.. 그러면 연속된 수가 아닐 수도 있으니까, 일단 더하다가 a를 넘어서면 딱 a만큼까지만 더하고 그 수를 최대수로 지정한다.이렇게 마지막에 더한 수가 최대값이 아닐 수 있기 때문에 마지막에 더한 값과 마지막 전에 더한 값을 비교해서 가장 큰 수를 최대값으로 지정했다.a = ..
문제KOI 전자에서는 건강에 좋고 맛있는 훈제오리구이 요리를 간편하게 만드는 인공지능 오븐을 개발하려고 한다. 인공지능 오븐을 사용하는 방법은 적당한 양의 오리 훈제 재료를 인공지능 오븐에 넣으면 된다. 그러면 인공지능 오븐은 오븐구이가 끝나는 시간을 초 단위로 자동적으로 계산한다. 또한, KOI 전자의 인공지능 오븐 앞면에는 사용자에게 훈제오리구이 요리가 끝나는 시각을 알려 주는 디지털 시계가 있다. 훈제오리구이를 시작하는 시각과 오븐구이를 하는 데 필요한 시간이 초 단위로 주어졌을 때, 오븐구이가 끝나는 시각을 계산하는 프로그램을 작성하시오.입력첫째 줄에는 현재 시각이 나온다. 현재 시각은 시 A (0 ≤ A ≤ 23), 분 B (0 ≤ B ≤ 59)와 초 C (0 ≤ C ≤ 59)가 정수로 빈칸을..
문제정화는 N×M 크기의 초콜릿을 하나 가지고 있다. 초콜릿은 금이 가 있는 모양을 하고 있으며, 그 금에 의해 N×M개의 조각으로 나눠질 수 있다.초콜릿의 크기가 너무 크다고 생각한 그녀는 초콜릿을 친구들과 나눠 먹기로 했다. 이를 위해서 정화는 초콜릿을 계속 쪼개서 총 N×M개의 조각으로 쪼개려고 한다. 초콜릿을 쪼갤 때에는 초콜릿 조각을 하나 들고, 적당한 위치에서 초콜릿을 쪼갠다. 초콜릿을 쪼갤 때에는 금이 가 있는 위치에서만 쪼갤 수 있다. 이와 같이 초콜릿을 쪼개면 초콜릿은 두 개의 조각으로 나눠지게 된다. 이제 다시 이 중에서 초콜릿 조각을 하나 들고, 쪼개는 과정을 반복하면 된다.초콜릿을 쪼개다보면 초콜릿이 녹을 수 있기 때문에, 정화는 가급적이면 초콜릿을 쪼개는 횟수를 최소로 하려 한다...

문제오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자.입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시간을 예제 출력과 같은 방식으로 출력해보자.MenOfPassion 알고리즘은 다음과 같다.MenOfPassion(A[], n) { i = ⌊n / 2⌋; return A[i]; # 코드1}입력첫째 줄에 입력의 크기 n(1 ≤ n ≤ 500,000)이 주어진다.출력첫째 줄에 코드1 의 수행 횟수를 출력한다.둘째 줄에 코드1의 수행 횟수를 다항식으로 나타내었을 때, 최고차항의 차수를 출력한다. 단, 다항식으로 나타낼 수 없거나 최고차항의 차수가 3보다 크면 4를 출력한다.목표 : 알고리즘 수행 횟수 ..

문제영선이는 길이가 a, b, c인 세 막대를 가지고 있고, 각 막대의 길이를 마음대로 줄일 수 있다.영선이는 세 막대를 이용해서 아래 조건을 만족하는 삼각형을 만들려고 한다.각 막대의 길이는 양의 정수이다세 막대를 이용해서 넓이가 양수인 삼각형을 만들 수 있어야 한다.삼각형의 둘레를 최대로 해야 한다.a, b, c가 주어졌을 때, 만들 수 있는 가장 큰 둘레를 구하는 프로그램을 작성하시오. 입력첫째 줄에 a, b, c (1 ≤ a, b, c ≤ 100)가 주어진다.출력첫째 줄에 만들 수 있는 가장 큰 삼각형의 둘레를 출력한다.처음엔 문제가 이해안됐는데;;일단 문제의 조건을 만족하려면, 삼각형의 조건을 만족하는지 확인해야 한다.삼각형 조건 : 가장 큰 변의 길이가 나머지 두 변의 길이의 합보다 작아야 한..