原文地址:https://my.oschina.net/meiguizhinian/blog/875404
Description
已知有一张纸,其厚度为1厘米。现在给你一座山的高度N(单位:米)。问将纸对折多少次后,其厚度将超过这座山的高度?
The Input
你的程序需要从标准输入设备(通常为键盘)中读入多组测试数据。每组输入数据由一行组成,每行为一个正整数N,N小于等于珠穆朗玛峰的高度。
The Output
对每组测试数据,你的程序需要向标准输出文件(通常为启动该程序的文本终端)依次输出一组对应的答案:对折的次数,所有数据前后没有多余的空行,两组数据之间也没有多余的空行。
Sample Input
50 8848
Sample Output
13 20
代码
#include <stdio.h>
#include <math.h>
int main() {
int n;
while (scanf("%d",&n)!=EOF) {
printf("%d\n",(int)ceil(log2(n*100)));
}
return 0;
}