#21765: C++ 自己跑可以成功運作也可跳出 但給系統測卻一直TLE 求解


vincent5538@gmail.com (EE)

學校 : 國立清華大學
編號 : 113606
來源 : [61.231.148.174]
最後登入時間 :
2022-01-24 00:02:34
a004. 文文的求婚 | From: [42.77.237.244] | 發表日期 : 2020-07-17 12:20

#include <iostream>

using namespace std;

int main(){

    int year=0;

    

    cin>>year;

    

    while(year!=EOF){

        if((year%400==0)||((year%4==0)&&(year%100!=0)))

            cout<<"閏年\n";

        else

            cout<<"平年\n";

        cin>>year;

    }

    return 0;

}

上述是我的程式碼,請問是什麼地方出了問題呢?

 

另外我看到有些人是寫

int year;

while(cin>>year){

...

}

我自己測這樣確實可以跑,也可以通過系統評測,但是這樣的方式它是在什麼地方讀取EOF的呢?

 
#21794: Re:C++ 自己跑可以成功運作也可跳出 但給系統測卻一直TLE 求解


ryanovovo@gmail.com (ryan liao)

學校 : 不指定學校
編號 : 123743
來源 : [140.113.136.218]
最後登入時間 :
2023-05-11 15:45:35
a004. 文文的求婚 | From: [114.25.183.94] | 發表日期 : 2020-07-21 16:18

#include

using namespace std;

int main(){

    int year=0;

    

    cin>>year;

    

    while(year!=EOF){

        if((year%400==0)||((year%4==0)&&(year%100!=0)))

            cout<<"閏年\n";

        else

            cout<<"平年\n";

        cin>>year;

    }

    return 0;

}

上述是我的程式碼,請問是什麼地方出了問題呢?

 

另外我看到有些人是寫

int year;

while(cin>>year){

...

}

我自己測這樣確實可以跑,也可以通過系統評測,但是這樣的方式它是在什麼地方讀取EOF的呢?

EOF代表的是檔案結尾,上面的while判斷是沒有意義的

 
ZeroJudge Forum