首页 > 吃水果
头像 recom
发表于 2020-04-11 09:10:39
吐槽,为什么大家都没有证明过程,我来写一个吧。 输入入有n个香蕉m个苹果; 因为要把两种水果要吃完,而且水果种类对解基本没有影响,所以,可以使n的数量最大,以方便之后的操作。 即if(n<m) swap(n,m); 核心思维就是: 设一个临时变量int tmp=n-m; 展开全文
头像 峰夏
发表于 2020-04-10 22:20:49
#include <iostream> using namespace std; int main() { int T; cin >> T; while(T--) { int n,m, res = 0; cin &g 展开全文
头像 pphkaa
发表于 2020-04-11 01:14:57
这道题应该大家跟我在做的时候都想到了要使这两者数量最接近,所以要使较小的那个不断扩大两倍直到他们两数量最接近(不能超过),然后想到这一点后我就陷入了泥潭,一直在思考怎么确定再次倍增的条件呢,然后就。。。。卡这卡死了,后面补题的时候看了大佬的代码发现,其实根本不用想的这么复杂,当我们使他们两最接近的时 展开全文
头像 Meul
发表于 2020-04-11 01:38:20
题意 你有n个苹果和m个香蕉,你可以花一天时间使得其中一种水果翻倍,或者花一天时间同时吃掉1个苹果和1个香蕉,苹果和香蕉必须同时吃掉。求最少多少天可以吃完? 思路 贪心:我们翻倍要做到既让水果得到最大程度的补充,又不能超过,则进行翻倍。这里苹果和香蕉是等地位的,为了方便我们先把大的给到,小的给到,看 展开全文

等你来战

查看全部