首页 新闻 搜索 专区 学院

一道面试题

0
[已解决问题] 解决于 2008-04-12 15:23
今天又去面试了,遇见一道题分析了半天没有弄出来。现在给大家看下,希望能指点一下。如下:有一群猴子,它们每天要吃桃子,它们第一天吃的数量是总量的一半再多一个,第二天吃的是第一天剩下的一半再多一个,第三天吃的是第二天剩下的一半多一个,以此类推直到第N天的时候只剩下一个桃子了,请问一共有多少桃子?用用递归算法实现,最好是有详细代码,谢谢,静待佳音。
握薪尝蛋的主页 握薪尝蛋 | 初学一级 | 园豆:145
提问于:2008-04-11 14:30
< >
分享
最佳答案
0
之所以用Int64,是因如果吃一个月话,桃子数Int32放不下 原来乘以2果然这么厉害,30天:3221225470,如果我有这么桃子,我就不用写程序了 ======================== static Int64 Total; static void Main(string[] args) { for (int i = 1; i <= 30; i++) { Total = 1; F(i); Console.WriteLine("{0}\t{1}",i,Total); } Console.Read(); } static void F(int m) { if (m > 0) { Total = (Total + 1) * 2; m--; F(m); } else { return; } }
丁学 | 专家六级 |园豆:18530 | 2008-04-11 15:33
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册