#45281: 救......命......


Xcode (Xcode)

學校 : 臺北市立建國高級中學
編號 : 156489
來源 : [220.129.22.151]
最後登入時間 :
2025-09-02 19:50:39

#include <iostream>

using namespace std;

int main() {

    int ans[4], n, ya[4], a = 0, b = 0;

    while (cin >> ans[0] >> ans[1] >> ans[2] >> ans[3]){

        cin >> n;

        while (n--){

            for (int m = 0; m < 4; m++){

                cin >> ya[m];

            }

            for (int l = 0; l < 4; l++){

                if (ans[l] == ya[l]){

                    a++;

                    ya[l] = -1;

                    continue;

                }

                else {

                    for (int k = 0; k < 4; k++){

                        if (ans[l] == ya[k]){

                            b++;

                            continue;

                        }

                    }

                }

            }

            cout << a << "A" << b << "B\n";

            a = 0;

            b = 0;

        }

    }

    return 0;

}

#0: 100% TLE (1s)

Killed

而且為什麼我翻之前的記錄有人說測資有空行,但也有人說沒有
我還發現有人TLE是3秒,有人的卻是1秒 : (
#45286: Re: 救......命......


e1000222.s@go.edu.tw (李冠翰)

學校 : 高雄市苓雅區復華高級中學國中部
編號 : 235637
來源 : [36.238.152.162]
最後登入時間 :
2025-10-05 11:15:44

#include

using namespace std;

int main() {

    int ans[4], n, ya[4], a = 0, b = 0;

    while (cin >> ans[0] >> ans[1] >> ans[2] >> ans[3]){

        cin >> n;

        while (n--){

            for (int m = 0; m < 4; m++){

                cin >> ya[m];

            }

            for (int l = 0; l < 4; l++){

                if (ans[l] == ya[l]){

                    a++;

                    ya[l] = -1;

                    continue;

                }

                else {

                    for (int k = 0; k < 4; k++){

                        if (ans[l] == ya[k]){

                            b++;

                            continue;

                        }

                    }

                }

            }

            cout << a << "A" << b << "B\n";

            a = 0;

            b = 0;

        }

    }

    return 0;

}

#0: 100% TLE (1s)

Killed

而且為什麼我翻之前的記錄有人說測資有空行,但也有人說沒有
我還發現有人TLE是3秒,有人的卻是1秒 : (

第一步 I/O優化
    cin.tie(0);
    ios_base::sync_with_stdio(false);
第二步
重新檢查邏輯
應該要新開一個陣列紀錄答案,如果有重複(例如1234和1312 or 1312和1234)要把答案紀錄和輸入資料換掉(要換成不一樣)。
參考答案

#45287: Re: 救......命......


e1000222.s@go.edu.tw (李冠翰)

學校 : 高雄市苓雅區復華高級中學國中部
編號 : 235637
來源 : [36.238.152.162]
最後登入時間 :
2025-10-05 11:15:44

#include

using namespace std;

int main() {

    int ans[4], n, ya[4], a = 0, b = 0;

    while (cin >> ans[0] >> ans[1] >> ans[2] >> ans[3]){

        cin >> n;

        while (n--){

            for (int m = 0; m < 4; m++){

                cin >> ya[m];

            }

            for (int l = 0; l < 4; l++){

                if (ans[l] == ya[l]){

                    a++;

                    ya[l] = -1;

                    continue;

                }

                else {

                    for (int k = 0; k < 4; k++){

                        if (ans[l] == ya[k]){

                            b++;

                            continue;

                        }

                    }

                }

            }

            cout << a << "A" << b << "B\n";

            a = 0;

            b = 0;

        }

    }

    return 0;

}

#0: 100% TLE (1s)

Killed

而且為什麼我翻之前的記錄有人說測資有空行,但也有人說沒有
我還發現有人TLE是3秒,有人的卻是1秒 : (
有人TLE是3秒,有人的卻是1秒 

Python(確定)和java(好像有)的時間是C和C++的3倍。



#45393: Re: 救......命......


Xcode (Xcode)

學校 : 臺北市立建國高級中學
編號 : 156489
來源 : [220.129.22.151]
最後登入時間 :
2025-09-02 19:50:39

#include

using namespace std;

int main() {

    int ans[4], n, ya[4], a = 0, b = 0;

    while (cin >> ans[0] >> ans[1] >> ans[2] >> ans[3]){

        cin >> n;

        while (n--){

            for (int m = 0; m < 4; m++){

                cin >> ya[m];

            }

            for (int l = 0; l < 4; l++){

                if (ans[l] == ya[l]){

                    a++;

                    ya[l] = -1;

                    continue;

                }

                else {

                    for (int k = 0; k < 4; k++){

                        if (ans[l] == ya[k]){

                            b++;

                            continue;

                        }

                    }

                }

            }

            cout << a << "A" << b << "B\n";

            a = 0;

            b = 0;

        }

    }

    return 0;

}

#0: 100% TLE (1s)

Killed

而且為什麼我翻之前的記錄有人說測資有空行,但也有人說沒有
我還發現有人TLE是3秒,有人的卻是1秒 : (
有人TLE是3秒,有人的卻是1秒 

Python(確定)和java(好像有)的時間是C和C++的3倍。



感恩,AC