题意:
给一个送礼,一共n个礼物,一次送的数量随意,但是相邻两次不能相同,问最多送几次
思路:
错误及反思:
代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n;
scanf("%I64d",&n);
long long ans=(n/3)*2;
if(n%3) ans++;
printf("%I64d\n",ans);
}
本文探讨了一个有趣的礼物配送问题,即如何在确保相邻两次配送数量不同的前提下,实现最多配送次数的算法实现。通过数学推导得出,对于任意数量的礼物,最佳配送策略是将配送次数尽可能平均地分为两组,每组数量相差不超过1,以此达到最大配送次数。
给一个送礼,一共n个礼物,一次送的数量随意,但是相邻两次不能相同,问最多送几次
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long n;
scanf("%I64d",&n);
long long ans=(n/3)*2;
if(n%3) ans++;
printf("%I64d\n",ans);
}

被折叠的 条评论
为什么被折叠?