28281
#include <stdio.h>
int main(void){
long long day, price;
scanf("%lld %lld", &day, &price);
long long socks_price1, min_price;
// 첫 번째 양말
scanf("%lld", &socks_price1);
for(int i = 1; i < day; i++){
long long socks_price2;
// 두 번째 양말
scanf("%lld", &socks_price2);
// 총 가격
long long total_price = socks_price1*price + socks_price2*price;
// 가장 작은 값이 현재 값보다 크면
if((i == 1) | (min_price > total_price)){
// 가장 작은 값을 현재 값으로 바꿈
min_price = total_price;
// 현재 두번째 양말을 첫번째 양말로
socks_price1 = socks_price2;
}
}
// 출력
printf("%lld", min_price);
return 0;
}

힝,, 내 작업환경에서는 올바른 답이 나오는데 자꾸 틀렸다네,,
ㅜㅜㅜㅜ 뭐가 문젠지 모르겟음
그래서 걍 다시 품..
#include <stdio.h>
int main(void){
int day, socks;
scanf("%d %d", &day, &socks);
int socks_arr[day];
int min_price;
for(int i = 0; i < day; i++){
int price;
// 양말 가격 입력
scanf("%d", &price);
socks_arr[i] = price;
}
for(int j = 1; j < day; j++){
// 현재 총 비용
int total_price = socks_arr[j-1] * socks + socks_arr[j] * socks;
// 최소 비용이 현재 비용보다 크면
if((j == 1) | (min_price > total_price)){
// 최소 비용을 현재 비용으로 바꿈
min_price = total_price;
}
}
// 출력
printf("%d", min_price);
return 0;
}

=3=
'백준' 카테고리의 다른 글
| [ 백준 / C ] 2443번 : 별 찍기 - 6 (0) | 2025.08.11 |
|---|---|
| [ 백준 / C ] 32154번 : SUAPC 2024 Winter (0) | 2025.08.08 |
| [ 백준 / C ] 1546번 : 평균 (2) | 2025.08.07 |
| [ 백준 / C ] 2445번 : 별 찍기 - 8 (0) | 2025.08.07 |
| [ 백준 / C ] 5063번 : Nasty Hacks (0) | 2025.08.07 |