[BAEKJOON] 백준 28281: 선물 (C#)
2024. 6. 19. 14:28ㆍIT/BaekJoon
문제 링크
https://www.acmicpc.net/problem/28281
문제
𝑁일 뒤는 동원이의 생일이다. 축하해 주자!
준원이는 동원이에게 생일 선물로 양말을 2𝑋개 선물하려 한다. 양말은 시장에서 살 것이다. 연속한 이틀에 걸쳐서, 준원이는 매일 시장에서 양말을 𝑋개씩 사서 트럭에 담아올 것이다.
시장에서 양말의 가격은 날마다 다를 수 있다. 오늘부터 𝑖번째 날에, 양말은 하나에 𝐴𝑖원이다.
동원이의 생일까지 𝑁일 남았다! 남은 𝑁일 가운데 연속한 이틀에 걸쳐 양말 2𝑋개를 사는 데 드는 최소 비용은?
입력
첫째 줄에 𝑁과 𝑋가 공백을 사이에 두고 주어진다.
둘째 줄에 𝑁일간 양말의 가격 𝐴1,𝐴2,⋯,𝐴𝑁이 공백을 사이에 두고 주어진다.
출력
연속한 이틀에 걸쳐 하루에 양말을 𝑋개씩 구매하는 방법으로, 양말 2𝑋개를 사는 데 드는 최소 비용을 출력한다.
제한
- 2≤𝑁≤100000
- 1≤𝑋≤1000000
- 1≤𝐴𝑖≤1000 (1≤𝑖≤𝑁)

통과한 답안
namespace _28281
{
internal class Program
{
static void Main(string[] args)
{
string[] inputs = Console.ReadLine().Split(' ');
int N = int.Parse(inputs[0]);
int X = int.Parse(inputs[1]);
int[] prices = Console.ReadLine().Split(' ').Select(int.Parse).ToArray();
int minPrice = int.MaxValue;
for (int i = 0; i < prices.Length - 1; i++)
{
int nowPrice = (prices[i] + prices[i + 1]);
if (nowPrice < minPrice)
{
minPrice = nowPrice;
}
}
Console.WriteLine(minPrice * X);
}
}
}
매일 양말의 가격이 달라지는데 N일 후에 2 * X개의 양말을 준비하려고 한다.
또, 양말은 연속해서 X개를 살 수 있다.
이 경우에 양말을 사는데 드는 최소 비용을 구하는 문제이다.
for 문을 이용하여 연속된 이틀의 가격 중 최소가를 찾은 후에
이를 X를 곱해서 출력하도록 구현하였다.
'IT > BaekJoon' 카테고리의 다른 글
[BAEKJOON] 백준 25595: 86 ─에이티식스─ 2 (C#) (0) | 2024.06.19 |
---|---|
[BAEKJOON] 백준 15351: 인생 점수 (C#) (1) | 2024.06.19 |
[BAEKJOON] 백준 15784: 질투진서 (C#) (0) | 2024.06.18 |
[BAEKJOON] 백준 15780: 멀티탭 충분하니? (C#) (0) | 2024.06.18 |
[BAEKJOON] 백준 23827: 수열 (Easy) (C#) (0) | 2024.06.17 |