题目: abcde五人打渔,打完睡觉,a先醒来,扔掉1条鱼,把剩下的分成5分,拿一份走了;b再醒来,也扔掉1条,把剩下的分成5份,拿一份走了;然后cde都按上面的方法取鱼。问他们一共打了多少条鱼,写程序和算法。
分析:设x为总数,y为最后剩余的数量,则:
a:
aget = 1/5(x-1), aleft = 4/5(x-1)
b:
bget = 1/5(aleft -1), bleft = 4/5(aleft-1) = 4/5( 4/5(x-1)-1 )
.............
y = 4/5((4/5(4/5(4/5(4/5(x-1))-1 )-1)-1)-1)
x=5/4(5/4(5/4(5/4(5/4*y+1)+1)+1)+1)+1
这样就可以用递归来解这个表达式的值,要把上面表达式转换为x的表达式来求,代码如下:
int fishsum(int persons,int lasttotal)
{
int get = 0;
if(persons < 1 || lasttotal < 1)
return 0;
if( (get = lasttotal%4) ==0)
{
if(persons >1)
{
return fishsum(persons -1,(lasttotal/4)*5 +1);
}
return ((lasttotal/4)*5 +1);
}
return 0;
}
int _tmain(int argc, _TCHAR* argv[])
{
int lastget = 63; //lastget的值可以从1开始测试,从63开始是我自己设定的
int sum = 0;
for(;;)
{
if(sum >0)
{
cout << --lastget <<"--->"<<sum;
break;
}
sum = fishsum(5,4*lastget++);
}
for(;;);
return 0;
}
分享到:
相关推荐
创新工场-2015-研发笔试题.PDF,答案在牛客网,0积分,免费下载!
创新工场 的笔试题目!希望对大家有帮助!是2011年的!明年也要找工作了!加油!
2012创新工场笔试题
创新工场李开复:SoLoMo互联网未来发展模式 可以看看了解下
创新工场的笔试题,20130916 1、socket客户端调用的函数是()
对话创新工场CEO李开复:我没有诚信问题.docx
创新工场2周岁:投资人想孵化“Facebook”.docx
5个文档,基本网上的题目都在这里了,都会了可以应付一切面试。
创新工场CEO李开复:如何很好的安排好自己的时间?.docx
July博客整理,九月腾讯,创新工场,淘宝等公司最新面试三十题(第171-200题)
2015创新工场校招研发笔试题.pdf 2015小米校招技术类笔试题.pdf 360校园招聘2015届技术类笔试题.pdf 4399游戏2015校园招聘游戏开发类笔试题.pdf 人人网2015研发笔试卷B.pdf 人人网2015研发笔试卷C.pdf 搜狗2015校园...
九月腾讯,创新工场,淘宝等公司最新面试三十题 1、要求设计一个DNS的Cache结构,要求能够满足每秒5000以上的查询,满足IP数据的快速插入,查询的速度要快。 2、淘宝面试题:有一个一亿节点的树,现在已知两个点,找...
2012创新工场校园招聘笔试题,相当给力!
2012九月腾讯,创新工场,淘宝等公司最新面试三十题.
2015年创新工场校招研发笔试题,提前做,未雨绸缪
创新工场校园招聘试题2013,分享一下,希望能帮助大家
创新工场2013年校园招聘笔试试题.docx创新工场2013年校园招聘笔试试题.docx创新工场2013年校园招聘笔试试题.docx创新工场2013年校园招聘笔试试题.docx创新工场2013年校园招聘笔试试题.docx创新工场2013年校园招聘...
创新工场汪华:移动互联网小团队创业经验谈.docx
创新工场汪华:看好移动互联网5大领域前景.docx