买房子
一、题目
蒜头君从现在开始工作,年薪 N 万。他希望在蒜厂附近买一套 60 平米的房子,现在价格是 200 万。假设房子价格以每年百分之 K 增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 N 万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 N万,房价 200 万)
二、 输入
一行,包含两个正整数 N(10≤N≤50),K(1≤K≤20),中间用单个空格隔开。
三、输出
如果在第 20年或者之前就能买下这套房子,则输出一个整数 M,表示最早需要在第 M 年能买下;否则输出"Impossible"。
四、样例输入输出
Input
50 10
Output
8
五、解题思路
循环比较20年里的工资总数和房价,如果某年工资总数>房价,则输出年份;如果工资总数一直小于房价,则输出不可能。
注意:使用double类型,因为房价可能会出现小数,使用int类型可能会出现比较错误。
六、样例代码
#include<iostream>
using namespace std;
int n;
double k;
double sum,value=200.0;//资产,房价
int main()
{
cin>>n>>k;
sum=n;
for(int i=2;i<=20;i++)
{
sum=sum+n;
value=value*(1+k/100);
if(sum>=value)
{
cout<<i<<endl;
return 0;
}
}
cout<<"Impossible"<<endl;
return 0;
}