百炼POJ 2807题目为什么超时?

qq_41275973 2018-09-19 02:41:42
题目连接http://bailian.openjudge.cn/practice/2807
我的做法是用数组模拟输入,输入了就是一,然后再去找两倍,但是提交,后Output Limit Exceeded
不知道为什么
#include<stdio.h>

int main(){
while(1){
int num[101],temp,n=0,count=0;
for(int i=0;i<101;i++)
{
num[i]=0;
}
while(1){
scanf("%d",&temp);
if(temp==0 || temp==-1) break;
num[temp] = 1;
n++;
}
if(temp==-1) break;
for(int i=1;i<=100;i++){
if(num[i]==1)
if(num[2*i]==1){
count++;
}
}
printf("%d\n",count);
}
return 0;
}
...全文
63 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
最外层的while(1)是多余的,if(temp==-1) break;也是多余的

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧