#include <stdio.h> //#include <stdlib.h> int c[10001]={0}, y[10001]={0}; double cal(int n, int s); int main(void) { int n, s, i; double price; scanf(" %d %d", &n, &s); //기간 - n주, 1주일 동안 보관하는데 드는 비용 - s원 for(i=0; i<n; i++) { scanf(" %d %d", &c[i], &y[i]); //c원 - 1l 구매가격 //각 주마다 yl의 우유 필요 } price=cal(n, s); printf("%.0f", price); return 0; } double cal(int n, int s) { int i, j; double price, min, a; price=(1.0)*c[0]*y[0]; //첫주에 필요한 금액 for(i=1; i<n; i++) { min=(1.0)*c[i]*y[i]; //필요한 주에 구매할 경우 금액 for(j=0; j<i; j++) { a=((1.0)*y[i]*c[j])+((1.0)*y[i]*s*(i-j)); //이전에 미리 사둘 경우 금액 if(a<min) //더 싼 가격 찾기 { min=a; //printf("i=%d j=%d a=%.0f \n", i, j, a); //system("PAUSE"); } } //printf("i=%d j=%d min=%.0f \n", i, j, min); //system("PAUSE"); price+=min; //더 싼 금액을 더한다 } return price; }
2018.03.17 10:09
정올 - 알고리즘 - 요플레공장(2194)
조회 수 388 추천 수 0 댓글 0