PTA 7-154 置点不动产——认真学习,努力工作买买房子吧
分数 10
作者 焦晓军
单位 重庆科技学院
某程序员开始工作,年薪N万,他希望在ZG村公馆买一套60平米的房子,现在价格是200万,假设房子价格以每年百分之K增长,并且该程序员未来年薪不变,且不吃不喝,不用交税,每年所得N万全都积攒起来,问第几年能够买下这套房子?(第一年年薪N万,房价200万)
输入格式:
一行,包含两个正整数N(10 <= N <= 50), K(1 <= K <= 20),中间用单个空格隔开。
输出格式:
如果在第20年或者之前就能买下这套房子,则输出一个整数M,表示最早需要在第M年能买下,否则输出Impossible。
输入样例:
在这里给出一组输入。例如:
50 10
输出样例:
在这里给出相应的输出。例如:
8
代码长度限制
16 KB
时间限制
400 ms
内存限制
64 MB
#include <stdio.h>
int main(){
int n, k; //定义两个整数
int year; //买房子的第几年
double percent, salary, housing = 200.0;
scanf("%d %d", &n, &k);
salary = n; //第一年年薪
percent = k / 100.0 + 1; //增长率
for(year = 1; year <= 20 ; year++){ //20年内买房子
if(salary >= housing){//能够买房子就跳出循环
break;
}
salary = salary + n; //薪水
housing = housing * percent; //房价
}
if(year <= 20){ //如果再20年内
printf("%d\n", year);
}else{ //否则
printf("Impossible\n");
}
return 0;
}
解题思路:
step1:先求出增长率
step2:计算每年房价增长后的价格和该程序员的薪水总和
step3:判断能够买房
归属知识点:
选择结构
循环语句