经典的农夫养牛问题(常考的面试题)
2010-12-22 09:55
225 查看
经典的农夫养牛问题(常考的面试题)
一个农夫养了一头牛,三年后,这头牛每年会生出1头牛,生出来的牛三年后,又可以每年生出一头牛……问农夫10年后有多少头牛?n年呢?
假设牛不死亡的话,10年后有28头牛。
package dailyTest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test006 {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("你要查询几年后牛的总数:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n;
try {
n = Integer.parseInt(br.readLine());
int x = 1, y = 1;
for(int i=0;i<n;i++) {
if(i>=3) { y = x + y;
x = y - x;
}
}
System.out.println(n + "年后总共有" + y + "头牛");
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
一个农夫养了一头牛,三年后,这头牛每年会生出1头牛,生出来的牛三年后,又可以每年生出一头牛……问农夫10年后有多少头牛?n年呢?
假设牛不死亡的话,10年后有28头牛。
package dailyTest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Test006 {
/**
* @param args
*/
public static void main(String[] args) {
System.out.println("你要查询几年后牛的总数:");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n;
try {
n = Integer.parseInt(br.readLine());
int x = 1, y = 1;
for(int i=0;i<n;i++) {
if(i>=3) { y = x + y;
x = y - x;
}
}
System.out.println(n + "年后总共有" + y + "头牛");
} catch (NumberFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
相关文章推荐
- 经典的农夫养牛问题
- 经典的农夫养牛问题
- 经典的农夫养牛问题
- 经典面试题------农夫养牛
- 经典的农夫养牛问题
- 面试题:农夫养牛问题
- 面试题:农夫养牛问题
- 一道经典的面试题--12小球称重问题
- 农夫养牛de 问题
- 面试题——C/C++经典问题,及面试笔试题
- 面试题——C/C++经典问题,及面试笔试题
- 经典面试题——二维矩阵子矩阵和问题
- 经典的面试题:链表的相交与环问题 (一)
- 经典面试题:链表的相交与环问题
- 约瑟夫环问题分析-C语言经典面试题
- 经典面试题:链表的相交与环问题
- 面试题——C/C++经典问题,及面试笔试题
- 经典面试题:链表的相交与环问题
- 关于链表的一些经典问题以及相关面试题
- 从一道面试题看深拷贝、浅拷贝构造函数问题 (经典)