P9748 [CSP-J 2023] 小苹果 题解

结论

通过计算,可得出当 \(n\) % \(3=1\) 时,则说明第 \(n\) 个苹果将被拿走.其他时候,直接将 \(n\) 减去 \(n/3\) (向上取整.)

结论过程

1

代码

#include<bits/stdc++.h>
using namespace std;
int ans1, ans2, n;
int main() {
	scanf("%d", &n);
	for (int i = 1; ; i++) {
		if (n == 0) break; // 没有苹果了
		if (n % 3 == 1 && !ans2) ans2 = i; // 记录答案
        ans1++; // 天数加 1
		n -= ceil(n / 3.0); // 向上取整拿掉的苹果
	}
	printf("%d %d", ans1, ans2);
	return 0;
} 
posted @ 2024-10-22 12:24  Panda_LYL  阅读(54)  评论(0)    收藏  举报