1047: 你好世界
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 625 Solved: 339
[ Submit][ Status][ Web Board]
Description
你刚刚学会用printf(“Hello,world!”)向世界问好了,因此非常兴奋,希望输出n条Hello,world!信息,但你还没有学习循环语句,因为只能用复制粘贴的方式用n条printf语句来解决,比如经过一次复制粘贴之后一条语句会变两条,再经过一次复制粘贴会变四条……
至少需要复制粘贴几次才能使语句的条数正好等于n(0<n<10001),输出最小的复制粘贴次数.(每次可以只复制粘贴一部分语句)
Input
多组测试数据,每个测试数据都包含一个正整数n.
Output
对于每组测试数据输出最小的复制粘贴次数.
Sample Input
10
2
Sample Output
4
1
ac代码:
#include <iostream>
#include<cstdio>
using namespace std;
int main()
{
int n,s,counts;
while(scanf("%d",&n)!=EOF)
{
counts=0;
s=1;
while(s<n)
{
s=s*2;
counts++;
}
printf("%d\n",counts);
}
return 0;
}
解题心得:
纯粹水题,顺手做的。