c++请问这段代码用break为什么会超时?

#include <iostream>
using namespace std;
int main()
{
int n,num;
while (1)
{
cin >> n;
num = 0;
if (n == 0)
{
break;
}
while (n > 2)
{
num += n / 3;
n= (n / 3) + (n % 3);
}
if (n == 2)
{
num += 1;
n = 0;
}
cout << num << endl;
}
}
请问为什么用break跳出循环会超时?如果改成循环条件是cin>>n && n!= 0,不用break就不会超时。请问是什么问题?渣渣求指教
#华为##笔试题目#
全部评论
多case不满足题目复杂度?贴一下题目
点赞 回复 分享
发布于 2021-02-13 22:58
请问楼主解决这个问题了嘛
点赞 回复 分享
发布于 2021-02-13 22:32
我试了一下不会死循环啊
点赞 回复 分享
发布于 2020-07-01 21:07

相关推荐

如题,只有过一段小厂实习经历,秋招会很吃亏吗?
陈100:你觉得你进入小厂实习后,实习前和实习后技术水平有提升没? 有的话,肯定有帮助
点赞 评论 收藏
分享
牛客848095834号:举报了
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务