1:对礼物的价值排序,采用快速排序,从价值大到小排序。
2:主体思想:
2.1初始化:把第一个礼物分给Alan, 第二个礼物分给Bob,并以a、b纪录2者的个人的总价值
2.2:循环以下动作,直到分配结束:
if a<=b,把下一个礼物分给Alan
else ,把下一个礼物分给Bob
复杂度:排序复杂度为O( n*logn ),核心算法复杂度:O( n ),所以总体复杂度为O( n*logn )。
思想:没有按照你要求的动态规划的思想方法,而是采用了贪心算法,貌似要比动规简便。
分类: 电脑/网络 >>程序设计 >>其他编程语言问题描述:
题目:父亲给两兄弟分配N个礼物礼物,礼物的价值分别为N1,N2,N3……Nn,为了让两兄弟高兴,父亲决定让两人得到的礼物总价值差的绝对值最小,尽量让分配结果公平,请用动态规划算法为父亲写出礼物分配的算法。
解析:
#include<iostream>
using namespace std
int main()
{
cout <<"请输入n"<<endl
int n
cin>>n
int *pn=new int[n]输入礼物个数
float *pValue = new float[n]礼物价值
float *pValue1 = new float[n]第一个人的礼物价值
float *pValue2 = new float[n]第二个人的礼物价值
cout <<"输入价值" <<endl
for (int i = 0i <n i ++) 将所有的值存起来
{
cin >>pValue[i]
}
int row1 = 0
int row2 = 0
float fvalue1 = 0
float fvalue2 = 0
for (int j = 0j <n j ++)
{
if (fvalue1 <= fvalue2)
{
pValue1[row1] = pValue[j]
fvalue1 += pValue1[row1]
row1 ++
}
else
{
pValue2[row2] = pValue[j]
fvalue2 += pValue2[row2]
row2 ++
}
}
cout <<"第一个"<<fvalue1 <<endl
cout <<"第二个"<<fvalue2 <<endl
delete[] pn
delete[] pValue
delete[] pValue1
delete[] pValue2
pn = NULL
pValue = NULL
pValue1 = NULL
pValue2 = NULL
return 0
}
结婚礼物大家都很熟悉。把所有的礼物放在一起真的是一个小金库。但往往在分配问题上,家庭会有矛盾,尤其是媳妇和婆婆之间的矛盾。
举行婚礼确实要花一些钱,但我们也会收到一份漂亮的结婚礼物。面对这么一笔钱,每个家庭必然会有不同的分配方式。有的人觉得这钱应该是自己的,有的人觉得这钱应该拿出去做别的事情。明明结婚是一件幸福的事,却因为结婚礼物而真的不愉快,最后甚至分道扬镳。事实上,我们已经看到了很多关于结婚礼物分发的闹剧新闻:幸福的妻子!妈妈开心!这样分婚礼钱是对的!
丢了@号就回不来了:你真的像我以前的一个同事。结婚时她只是让婆家把礼物都拿走(刚办了婚宴,包括娘家客人的礼物,都是婆家拿走的)。后来她陪着仪式,以为是婆婆家的主要回归。她和她老公刚加了一个单独的。谁知道人家的意思是,小两口都该拿,却给了他们两个家庭谁加到婆家。最可怕的是,前同事问老公不讲理的时候,老公居然说他妈说的很有道理。他已经成家了,不得不独立送礼物。同事说看不出来,但是她一分钱的结婚礼物都没有。想退货为什么要退两件礼物?他老公说因为亲戚之间的礼物都是结婚前父母陪着的,别人送的礼物应该是结婚时父母收到的,但是他已经收到了。。。。。
@ty_118468757:和我一样,我结婚的时候,老公和朋友收到的都是父母送的礼物,一毛钱也没看到。我们从自己的口袋里支付了大部分礼物。后来他爸妈也把孩子满月酒的礼金拿走了,都拿了孩子的钱,平时也舍不得花钱。都是我妈家出的钱。在假期,我们必须支付假期费用。我现在准备离开了。如上所述,这样的公婆会把你嚼的渣滓都留下。
@相当关键:婚礼是我们自己出钱,相当于我老公家一分钱都没出。这是好事。他们收到了那边亲戚的礼金,一分钱都没给我们。气得差点离婚,真不厚道。那我们应该如何合理分配结婚礼金呢?首先,我们必须了解结婚礼物的来源:1.男方家庭的亲戚、朋友和同事,2.女方家庭的亲戚、朋友和同事,3.新人的朋友同事
所以,最合理的建议是,各取所需。但是,如果婚礼是分开举行的,那么男方接受男方,女方接受女方,互不干涉。然而问题又来了!宴会酒水谁买单?如果是男方,人家自然会叫屈。这个女人出来,想必更多的不会做。所以最好的解决办法就是用结婚礼物来结算。我们都知道多退少补的道理。对于一些家庭来说,有大量的结婚礼物。宴会账算完了,还有盈余,接下来再考虑怎么分配。这又是一场家庭口水战。
因此,我们必须事先召开一次家庭会议。毕竟结婚是大事,不仅仅是婚礼,更是蜜月旅行。我们来分析一下剩下的结婚礼物怎么分配。1.预算蜜月的费用。2.婚后家庭生活启动资金(一般指小两口)。3.新房子的装饰。4.其他人(以上情况因人而异,大家不拘小节)但一定要明白,这些“钱”总有一天会还的,不能乱用,父母要好好保管。
所以,新人又不甘心了。老人“专项基金”被认为是老式的,钱也要拿出来分清楚。新人的朋友同事都要给新人,以后也要回报自己。边肖综合了大家的建议,对结婚礼物的分发提出了一些解决方案。您可以参考:为了更好的缓解家庭矛盾,我们可以用结婚礼物来支付宴会和婚礼的费用,以弥补更多的退款
谁付酒席的钱,谁就收结婚礼物(男方收男方,女方收女方)如果家里有钱,可以把所有的结婚礼物都送给新人。两者相比,形成小家庭,以后用钱的地方更多弃宴算账,男的收男的,女的收女的,新人收自己的朋友。大家都不会八卦。当然,以上情况都需要和家人商量。结婚是一件幸福的事,因为赚钱真的不可能不幸福。和父母相比,我们最爱他们。我们真的很抱歉伤害了他们。相信大家以后都会退一步,过上更幸福的生活。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)