1. 程式人生 > >南陽OJ 題目64:雞兔同籠

南陽OJ 題目64:雞兔同籠

題目資訊:雞兔同籠


雖然是水題,但是還是有錯誤,不得不好好看看題目。 一經測試發現是這個地方存在問題:
假設有兩個頭,八隻腿,應該是兩隻兔的結果,卻沒有答案,說明在迴圈的條件處理又錯誤, 果然,雞應該從0開始算的,還是細心的一個問題!!!

程式碼實現:

package com.Basic;

import java.util.Scanner;

/*
 * Dragon
 * 2017/4/23
 * 雞兔同籠:http://acm.nyist.net/JudgeOnline/problem.php?pid=64&rec=rec
 */
public class Num_64 
{

	public static void main(String[] args)
	{
		Scanner in=new Scanner(System.in);
		int n=in.nextInt();
		
		int[][] result=new int[n][2];
		int[] flag=new int[n];
		for(int i=0;i<n;i++)
		{
			int count=in.nextInt();
			int legNumber=in.nextInt();
			flag[i]=isSolution(count,legNumber,result,i);
		}

		for(int i=0;i<n;i++)
		{
			if(flag[i]==0)
				System.out.println("No answer");
			else
				System.out.println(result[i][0]+" "+result[i][1]);
		}
	}

	private static int isSolution(int count, int legNumber, int[][] result, int i) 
	{
		for(int chicken=0;chicken<=count;chicken++)
		{
			int rabbit=count-chicken;
			if(2*chicken+4*rabbit==legNumber)
			{
				result[i][0]=chicken;result[i][1]=rabbit;
				return 1;
			}
		}
		return 0;
	}

}