CF1080A Petya and Origami 题解
Content
小 P 想给 \(n\) 位朋友各发一张邀请函,每张邀请函需要耗费 \(2\) 张红色纸,\(5\) 张绿色纸和 \(8\) 张蓝色纸。商店里面的纸是一堆一堆卖的,每堆里面有 \(k\) 张只含有红、绿、蓝三种颜色中的一个颜色的纸。求小 P 至少要买多少堆。
数据范围:\(1\leqslant n,k\leqslant 10^8\)。
Solution
直接看每种颜色需要多少堆,由于只能一堆一堆地买,所以只能多买,不能少买,因此答案就很显而易见了,分别是 \(\left\lceil\dfrac{2n}{k}\right\rceil,\left\lceil\dfrac{5n}{k}\right\rceil\) 和 \(\left\lceil\dfrac{8n}{k}\right\rceil\)。
Code
int n, k;
int main() {
getint(n), getint(k);
int ans = ceil(n * 2.0 / k) + ceil(n * 5.0 / k) + ceil(n * 8.0 / k);
writeint(ans);
return 0;
}