[HackerRank/C++] Taum and B'day
2023. 2. 7. 07:50ㆍ코딩테스트 해커랭크/Algorithms -Easy
사야할 검은 선물의 갯수 b, 하얀 선물의 갯수 w, 검은 선물의 가격 bc, 하얀 선물의 가격 wc,
마지막으로 검은 선물과 하얀 선물을 교환할 때 드는 추가비용 z를 변수로 받을 때
선물을 전부 샀을때 가장 낮은 비용을 return 한다
long taumBday(int b, int w, int bc, int wc, int z)
{
if (bc > wc + z)
bc = wc + z;
else if (wc > bc + z)
wc = bc + z;
return (long)b * (long)bc + (long)w * (long)wc;
}
만약 bc의 구매비용이 wc의 구매비용과 교환비용 z를 합친것 보다 크다면 bc는 wc + z의 가격으로 더 저렴하게 살 수 있으므로 bc의 값을 wc + z로 변경하고 반대의 경우도 마찬가지로 변경해 준다
그리고 갯수b 와 가격 bc, 갯수w와 가격 wc를 각각 곱한후 더한 값을 return 한다
반환형이 long 자료형이며 매개변수로 받을 때 int형으로 받았으므로 오버플로우를 대비해 연산 후가 아닌 연산 전에 long 자료형으로 형변환 한 후 연산을 진행한다
'코딩테스트 해커랭크 > Algorithms -Easy' 카테고리의 다른 글
| [HackerRank/C++] Beautiful Triplets (0) | 2023.02.07 |
|---|---|
| [HackerRank/C++] Modified Kaprekar Numbers (0) | 2023.02.07 |
| [HackerRank/C++] ACM ICPC Team (0) | 2023.02.07 |
| [HackerRank/C++] Equalize the Array (0) | 2023.02.07 |
| [HackerRank/C++] Jumping on the Clouds (0) | 2023.02.07 |