1. 程式人生 > >第五屆藍橋杯軟體類省賽真題-C-A-1_猜年齡

第五屆藍橋杯軟體類省賽真題-C-A-1_猜年齡

/*【題目】
標題:猜年齡

    小明帶兩個妹妹參加元宵燈會。別人問她們多大了,她們調皮地說:“我們倆的年齡之積是年齡之和的6倍”。
	小明又補充說:“她們可不是雙胞胎,年齡差肯定也不超過8歲啊。”

    請你寫出:小明的較小的妹妹的年齡。

注意: 只寫一個人的年齡數字,請通過瀏覽器提交答案。不要書寫任何多餘的內容。
*/

/*【解題思路】
從題目中可從抽象出兩個數學模型,即如下幾個數學條件
(age1+age2)*6 == age1*age2 && (age1-age2)>=0 && (age1-age2)<=8
其中從1開始列舉所有年齡情況,滿足條件即為題目的解
暴力列舉得出答案為: 10
*/
#include<iostream>
#define MAX 100
using namespace std;

bool isSolution(int age1,int age2)
{
	if((age1+age2)*6 == age1*age2 && (age1-age2)>0 && (age1-age2)<=8)
		return true;
	else
		return false;
}

int main()
{
	for(int i=0;i<MAX;i++)
		for(int j=i+1;j<MAX;j++)
			if(isSolution(j,i)){
				cout<<"小的妹妹的年齡:"<<i<<" 大的妹妹的年齡:"<<j; 
			}
				
	return 0;
}