查看: 1171|回復: 7
打印 上一主題 下一主題

[解決] [TOJ] 125 Holy War

[複製鏈接]
  • TA的每日心情
    鬱悶
    2015-2-10 21:23
  • 簽到天數: 1 天

    [LV.1]初來乍到

    12

    主題

    69

    帖子

    779

    積分

    高級會員

    Rank: 4

    積分
    779

    台南一中資訊社

    跳轉到指定樓層
    樓主
    發表於 2014-8-10 22:19:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

    趕快加入我們來參與討論吧!

    您需要 登錄 才可以下載或查看,沒有帳號?加入我們

    x
    本帖最後由 amoshuangyc 於 2014-8-10 22:51 編輯

    是不是我理解錯題目了,我是這麼想的,這相當於有 N*P 排石頭的 Nim Game。所以就用 Nim Game 的解法做了。但 WA。只有前二筆測資AC。

    [C++] 純文本查看 復制代碼
    #include <iostream>
    #include <algorithm>
    #include <vector>
    
    using namespace std;
    
    int main() {
        ios::sync_with_stdio(false);
        
        int N, P, C;
        cin >> N >> P >> C;
        
        int nim_sum;
        cin >> nim_sum;
        for (int i=0; i<N*P-1; i++) {
            int inp;
            cin >> inp;
            nim_sum = nim_sum ^ inp;
        }
        
        if (nim_sum == 0)
            cout << ((C == 0) ? "Ivy Win!" : "Holly Win!") << "\n";
        else
            cout << ((C == 0) ? "Holly Win!" : "Ivy Win!") << "\n";
        
        return 0;
    }

    回復

    使用道具 檢舉

  • TA的每日心情
    慵懶
    2015-4-10 14:18
  • 簽到天數: 78 天

    [LV.6]常住居民II

    176

    主題

    612

    帖子

    3959

    積分

    管理員

    Rank: 9Rank: 9Rank: 9

    積分
    3959

    台南一中資訊社新手達陣程式設計達人 - 2014

    頭香
    發表於 2014-8-10 22:34:13 | 只看該作者
    受騙者數目 +1

    試一試
    [Plain Text] 純文本查看 復制代碼
    2 2 0
    2 1
    2 1
    


    正確輸出
    [Plain Text] 純文本查看 復制代碼
    HOLLY WIN
    
    回復 支持 反對

    使用道具 檢舉

  • TA的每日心情
    鬱悶
    2015-5-15 22:38
  • 簽到天數: 33 天

    [LV.5]常住居民I

    75

    主題

    302

    帖子

    766

    積分

    版主

    TFcis - 105 附設監工官

    Rank: 7Rank: 7Rank: 7

    積分
    766

    台南一中資訊社程式設計達人 - 2014

    3#
    發表於 2014-8-10 22:34:19 | 只看該作者
    只要是同一個樹種,在任何一個森林裡都能砍
    所以同樹種先做總合
    (這題目真的好難理解題意@@)
    <這是個人簽名欄位>
    回復 支持 反對

    使用道具 檢舉

  • TA的每日心情
    開心
    2014-8-14 16:02
  • 簽到天數: 1 天

    [LV.1]初來乍到

    12

    主題

    138

    帖子

    863

    積分

    高級會員

    Rank: 4

    積分
    863

    台南一中資訊社新手達陣

    4#
    發表於 2014-8-10 22:36:10 | 只看該作者
    你可能有點誤解題目了
    題目只說"砍同種的樹"
    沒有說"不能砍不同樹林的樹"
    所以應該相當於P排的Nim Game
    回復 支持 反對

    使用道具 檢舉

  • TA的每日心情
    鬱悶
    2015-2-10 21:23
  • 簽到天數: 1 天

    [LV.1]初來乍到

    12

    主題

    69

    帖子

    779

    積分

    高級會員

    Rank: 4

    積分
    779

    台南一中資訊社

    5#
     樓主| 發表於 2014-8-10 22:39:41 | 只看該作者
    那 N 個樹林是怎麼回事?
    如果可以砍不同樹林的樹,那不就應該是 N*P 排的 Nim Game。整個程式只做一次 Nim Game。
    如果不可以砍不同樹林的樹,那題目是要我們一個樹林做一次 Nim Game ,然後比誰的勝利數多?
    回復 支持 反對

    使用道具 檢舉

  • TA的每日心情
    鬱悶
    2015-2-10 21:23
  • 簽到天數: 1 天

    [LV.1]初來乍到

    12

    主題

    69

    帖子

    779

    積分

    高級會員

    Rank: 4

    積分
    779

    台南一中資訊社

    6#
     樓主| 發表於 2014-8-10 22:44:04 | 只看該作者
    喔,我了解了,是指將所有樹林總和起來,同種加在一起,全部做一次 Nim Game 這樣?

    點評

    Yes  發表於 2014-8-10 22:48
    回復 支持 反對

    使用道具 檢舉

  • TA的每日心情
    鬱悶
    2015-2-10 21:23
  • 簽到天數: 1 天

    [LV.1]初來乍到

    12

    主題

    69

    帖子

    779

    積分

    高級會員

    Rank: 4

    積分
    779

    台南一中資訊社

    7#
     樓主| 發表於 2014-8-10 22:54:13 | 只看該作者
    本帖最後由 amoshuangyc 於 2014-8-10 23:08 編輯

    給出 AC code :
    [C++] 純文本查看 復制代碼
    #include <iostream>
    #include <algorithm>
    #include <vector>
     
    using namespace std;
     
    int main() {
        ios::sync_with_stdio(false);
         
        int N, P, C;
        cin >> N >> P >> C;
         
        vector<int> tree(P, 0);
        for (int i=0; i<N; i++)
            for (int j=0; j<P; j++) {
                int inp;
                cin >> inp;
                tree[j] += inp;
            }
        
        int nim_sum = tree[0];
        for (auto it=tree.begin()+1; it != tree.end(); it++)
            nim_sum = nim_sum ^ (*it);
         
        if (nim_sum == 0)
            cout << ((C == 0) ? "Ivy Win!" : "Holly Win!") << "\n";
        else
            cout << ((C == 0) ? "Holly Win!" : "Ivy Win!") << "\n";
         
        return 0;
    }


    回復 支持 反對

    使用道具 檢舉

    您需要登錄後才可以回帖 登入 | 加入我們

    本版積分規則

    快速回覆 返回頂部 返回列表