鸡兔同笼问题
2017-10-28 10:03
309 查看
鸡兔同笼问题:
统一笼子中,有一群鸡和兔子,共有m个头,n条腿,请设计算法,求解共有多少只兔子,多少只鸡
输入:
多组数据,输入0 0结束算法:
由于鸡和兔子都只有一个头,因此(n-2*m)/2表示兔子数鸡 = m - 兔子
排除不满足的情况,如,腿是奇数
代码:
import java.util.Scanner; public class Oj1004 { public static void main(String[] args) { int m,n; //m表示头个数,n表示腿个数 int chicken,rabbit; //chicken鸡,rabbit兔 Scanner reader = new Scanner(System.in); while(true) { m = reader.nextInt(); n = reader.nextInt(); if(m==0&&n==0) break; //输入异常,退出循环 chicken = (n - m*2)/2; //鸡的数量 rabbit = m - chicken; //兔子数量 if(n%2!=0) System.out.println("Error");//不满足的情况,腿为奇数 else System.out.println(chicken+" "+rabbit); } } }
运行结果:
35 9412 23
2 6
1 1
3 10
2 1
0 0