OpenJudge计算概论-买房子
2024-08-27 08:51:42
/*=================================================================
买房子
总时间限制: 1000ms 内存限制: 65536kB
描述
某程序员开始工作,年薪N万,他希望在中关村公馆买一套60平米的房子,现在价格是200万,假设房子价格以每年百分之K增长,并且该程序员未来年薪不变,且不吃不喝,不用交税,每年所得N万全都积攒起来,问第几年能够买下这套房子(第一年房价200万,收入N万) 输入
有多行,每行两个整数N(10 <= N <= 50), K(1 <= K <= 20)
输出
针对每组数据,如果在第20年或者之前就能买下这套房子,则输出一个整数M,表示最早需要在第M年能买下,否则输出Impossible,输出需要换行
样例输入
50 10
40 10
40 8
样例输出
8
Impossible
10 注意:k、累积存款和每一年的房价要用浮点型数据。累计存款可以不用浮点型数据也可以。
===================================================================*/
#include<stdio.h>
int main()
{
int N;
double k;
int i;//年数
int a,b;//a是累积的存款,b是当前房价。 while(scanf("%d%d",&N,&k)!=EOF)
{
i=;
k=k/;
a=N;
b=;
while(a<b&&i<=)
{
i++;
a=a+N;
b=b*(+k);
}
if(i<=)
{
cout<<i<<endl;
}
else
{
cout<<"Impossible"<<endl;
}
} return ;
}
#include<stdio.h>
int main()
{
int N;
double k;
int i;//年数
double a,b;//a是累积的存款,b是当前房价。注意,这个地方要用浮点型数据
int f;
freopen("4.in","r",stdin);
while(scanf("%d%lf",&N,&k)!=EOF)
{
k=k/;
i=;
a=N;
b=; if(a>=b)
{
printf("1\n");
continue;
}
f=;
for(i=;i<;i++)
{
a=a+N;
b=b*(+k);
if(a>=b)
{
printf("%d\n",i);
f=;
break;
}
}
if(f==)
{
printf("Impossible\n");
} /*while(a<b&&i<=20)
{
i++;
a=a+N;
b=b*(1+k);
}
if(i<=20)
{
printf("%d\n",i);
}
else
{
printf("Impossible\n");
}*/
} return ;
}
最新文章
- setprecision **fixed
- select2插件不兼容ie7,ie7下样子显示错位问题
- Java基础之面向对象以及其他概念
- LA 4329 ping-pong树状数组
- 专门为码农定制的14款创意的T裇(T-Shirt)设计
- 【Java】ServerSocket的学习笔记
- 1、C语言中的函数指针
- java.lang.ClassCastException: oracle.sql.TIMESTAMP cannot be cast to java.sql.Timestamp
- clear命令新认识
- Sonar 常用代码规则整理(一)
- c++之STL容器删除元素
- ecplise打不开提示Eclipse中...No java virtual machine was found...
- CentOS7 zabbix服务 简单安装文档
- PV对第三方存储的访问模式支持
- 第六次作业psp
- 在 Windows 安装期间将 MBR 磁盘转换为 GPT 磁盘
- MyBatis批量插入数据(MySql)
- 【DFS】POJ3009-Curling 2.0
- Shell 基本运算符(转)
- 40-语言入门-40-C小加之随机数