피자 포스
이 문제 설명을 간략히 적으면 6, 8, 10개 짜리 slice를 만들 수 있다
그때 각 걸리는 시간은 15, 20, 25이다
이것을 보면 효율은 다 같은걸로 볼 수 있는데 1당 2.5이다
n이 주어질때 충분한 피자를 만들때 걸리는 시간을 출력
예시 :
- if 1212 friends come to Petya's birthday, he has to order pizzas containing at least 1212 slices in total. He can order two small pizzas, containing exactly 1212 slices, and the time to bake them is 3030 minutes;
- if 1515 friends come to Petya's birthday, he has to order pizzas containing at least 1515 slices in total. He can order a small pizza and a large pizza, containing 1616 slices, and the time to bake them is 4040 minutes;
- if 300300 friends come to Petya's birthday, he has to order pizzas containing at least 300300 slices in total. He can order 1515 small pizzas, 1010 medium pizzas and 1313 large pizzas, in total they contain 15⋅6+10⋅8+13⋅10=30015⋅6+10⋅8+13⋅10=300 slices, and the total time to bake them is 15⋅15+10⋅20+13⋅25=75015⋅15+10⋅20+13⋅25=750 minutes;
- if only one friend comes to Petya's birthday, he can order a small pizza, and the time to bake it is 1515 minutes.
풀이 :
6, ,8, 10개짜리니 수를 짝수로 만들어야한다 ex : 17이면 18
근데 18 , 28.. 위의 숫자로 10보다 큰 짝수를 만들 수 있다
18 = 10+ 8
28 = 20 + 8
...
아이디어가 있으니 너무 간단해졌다
ll n = 0, ans = 0; cin >> n;
if (n <= 6) {
ans = 15;
}
else if (n > 6 && n % 2 == 0) {
ans = n \* 5;
ans /= 2;
}
else if (n > 6 && n % 2 != 0) {
ans = (n + 1) \* 5;
ans /= 2;
}
cout << ans << endl;
틀린이유 : 효율이 1당 2.5라는 것을 알았다
하지만 나는 17이 있을경우 이것을 짝수로 만들어야한다는 생각을 못했고 남은 나머지를 어떻게 처리하자라는 이상한 방향으로 틀어졌다 그때부터 잘못된거였다....
'코드포스 > div2' 카테고리의 다른 글
A. Find The Array (0) | 2021.08.09 |
---|---|
B. Two Tables (0) | 2021.08.02 |
B. Gregor and the Pawn Game (0) | 2021.08.02 |
div2 - Cherry (0) | 2021.07.30 |