P5720 【深基4.例4】一尺之棰 ,求救大佬
  • 板块学术版
  • 楼主Waveforever
  • 当前回复10
  • 已保存回复10
  • 发布时间2021/1/6 17:34
  • 上次更新2023/11/5 05:05:47
查看原帖
P5720 【深基4.例4】一尺之棰 ,求救大佬
452791
Waveforever楼主2021/1/6 17:34

一开始我是用Python这么写的:

import math as m
a = int (input ())
t = 0
while a != 1:
    if a == 1:
        break
    a = m.ceil (a / 2)
    t += 1
print (t)

然后在Python 3.6软件内测试都可以,但是到洛谷中题目就过不去,测试点数据是:

输入:1;

输出:1;

接下来我换了C++,以为"return 0"可以拯救一下我在Python中出错的break:

#include <iostream>
using namespace std;
int main ()
{
/*	
import math as m
a = int (input ())
t = 0
while a != 1:
    if a == 1:
        break
    a = m.ceil (a / 2)
    t += 1
print (t)
*/
	int a,t = 0;
	cin>>a;
	if (a == 1)
	{
		cout<<"0";
		return 0;
	}
	while (a != 1)
    {      
    	a /= 2;
    	t += 1;
    }
    cout<<t + 1;
	return 0;
}

(那一段注释是我尝试翻译时添上去参考的)

结果,还是过不了呜呜呜(测试点数据是:

输入:1;

输出:1;)

我不想要题解,只想知道我自己的错在哪里了呜呜呜

2021/1/6 17:34
加载中...