标题:超级诡异的超时。。求解释。
取消只看楼主
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
结帖率:77.78%
已结贴  问题点数:20 回复次数:1 
超级诡异的超时。。求解释。
题目在此处: http://acm.xmu.

第一种解法:
#include <iostream>
#include <math.h>
#define MAXSIZE 1000000
using namespace std;

int main()
{
    long int n;
    int temp=0,num;
    cin>>n;
    if(n<1||n>1000000) return -1;
    for(int i=0;i<2*n-1;i++)
    {
        cin>>num;
        temp=temp^num;
    }
    cout<<temp<<endl;
    return 0;
}


第二种解法
#include <iostream>
using namespace std;


int main()
{
    int n,i,x,s=0;
   
    scanf("%d",&n);
    n=n*2-1;
   
    for(i=1;i<=n;i++)
    {
      scanf("%d",&x);
      s=s^x;
    }
    printf("%d\n",s);
   
    return 0;
}

诡异的问题出现了,第一种解法 超时,用了5004MS,而第二种解法是AC的,用时2024MS。
 
诡异的地方在于两种解法除了输入用了两种表达方式以外没有任何区别。。。

想不明白了,请大神解释!!
搜索更多相关主题的帖子: include long return 
2012-11-02 09:02
聪儿
Rank: 1
等 级:新手上路
帖 子:75
专家分:3
注 册:2012-9-2
得分:0 
明白了。。对 c++太不懂了。。。多谢!
2012-11-03 16:19



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-385583-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 2.143118 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved