#6016: 為什麼會RE,自己電腦可以順利執行


jimmyee (LEVEL_UP)

學校 : 國立臺灣大學
編號 : 20170
來源 : [140.112.42.92]
最後登入時間 :
2016-03-18 15:33:33
d097. 10038 - Jolly Jumpers -- UVa10038 | From: [140.112.242.128] | 發表日期 : 2011-11-02 22:48

解題時都顯示WA,但是訊息是RE,自己電腦上都沒問題啊

#include<iostream>
using namespace std;
main()
{
    bool x;
    int n,temp,temp1,k,i;
    while(cin >> n)
    {
        bool a[n];
        cin >> temp;
        for(i=1;i<n;i++)
        {
            cin >> temp1;
            k=temp1-temp;
            if(k<0)
                k=-k;
            a[k]=1;
        }
        for(i=1,x=1;i<n;i++)
            if(!a[i])
            {
                x=0;
                break;
            }
        if(x)
            cout << "Jolly\n";
        else
            cout << "Not jolly\n";
    }
}

 
#6061: Re:為什麼會RE,自己電腦可以順利執行


sponge (qd)

學校 : 不指定學校
編號 : 21007
來源 : [114.42.180.252]
最後登入時間 :
2024-05-17 11:04:59
d097. 10038 - Jolly Jumpers -- UVa10038 | From: [114.46.106.34] | 發表日期 : 2011-11-11 02:24

解題時都顯示WA,但是訊息是RE,自己電腦上都沒問題啊

#include
using namespace std;
main()
{
    bool x;
    int n,temp,temp1,k,i;
    while(cin >> n)
    {
        bool a[n];
        cin >> temp;
        for(i=1;i        {
            cin >> temp1;
            k=temp1-temp;
            if(k<0)
                k=-k;
            a[k]=1;
        }
        for(i=1,x=1;i            if(!a[i])
            {
                x=0;
                break;
            }
        if(x)
            cout << "Jolly\n";
        else
            cout << "Not jolly\n";
    }
}

會 re 的原因是你的方式會有 k >= n 的形況

這一行  5 1 4 2 -1 6

n = 5,而最後一組 -1 和 6 的絕對值 k = 7

塞不進去。

 
ZeroJudge Forum