问题标题: 酷町堂:1604

0
0
已解决
马苏畅
马苏畅
中级守护
中级守护

经验值:0

题目描述 Description

有一张纸,其厚度为0.1毫米,将它对折多少次会超过桌面板的厚度n毫米?

输入描述 Input Description

桌面的厚度n(10<n<30)

输出描述 Output Description

对折的次数

样例输入 Sample Input

5

样例输出 Sample Output

6

 

为什么超时了?????????

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
    double a=0.1,b,c=0;
    cin>>b;
    while(1){
        a*=a;
        c++;
        if(a>=b){
            break;
        }
    }
    cout<<c;
    return 0;
}

 

 

采纳30豆


0
已采纳
朱小川
朱小川
缔造者
缔造者

while(sum<=n){ sum*=2; a++; } cout<<a;

这是核心

1 不需要cstdio

2 只需要两个定义

3 你break干嘛,还有if

4 看我的核心

0
马苏畅
马苏畅
中级守护
中级守护

那位大佬能帮忙解答???

 

我要回答