买房子

题目描述

某程序员开始工作,年薪N万,他希望在中关村公馆买一套60平米的房子,现在价格是200万,假设房子价格以每年百分之K增长,并且该程序员未来年薪不变,且不吃不喝,不用交税,每年所得N万全都积攒起来,问第几年能够买下这套房子(第一年房价200万,收入N万)

输入描述:

有多行,每行两个整数N(10<=N<=50), K(1<=K<=20)

输出描述:

针对每组数据,如果在第21年或者之前就能买下这套房子,则输出一个整数M,表示最早需要在第M年能买下,否则输出Impossible,输出需要换行

分析

<math.h>里面的函数pow(a, b), 返回值为double类型的a^b(a的b次方)
从第1年开始逐年试探

#include <iostream>
#include <math.h>
using namespace std;

int main(){
    int n;
    float k;
    while(cin >> n >> k){
        int i = 1;
        for(i = 1; i < 22; i++){
            if(n * i >= 200 * pow(1 + k / 100, i - 1)){
                cout << i << endl;
                break;
            }
        }
        if(i == 22) cout << "Impossible" <<endl;
    }
    return 0;
}

猜你喜欢

转载自www.cnblogs.com/zhuobo/p/10204654.html