賤狗高中麻將社準備參加全市的麻將大賽,代表選手有盩僰麌,大陸人,小鶍,木星人,企鵝。盩僰麌帶領的隊伍哪有可能輸呢?但是因為盩僰麌會裝弱,所以要靠其他人來凱瑞。盩僰麌表示為了增進大家的算牌能力,所以現在要玩一種進階版的麻將(牌的數字為$1 \sim N$、手上會持有$3M+1$張牌,不考慮牌不足的狀況),必須在很短的時間裡看出聽什麼牌。身為選手的企鵝覺得沒有原村和的擁抱,他就智商下降,所以希望你幫忙寫一個程式,判斷聽什麼牌。
首先先定義三個名詞:
所謂「和牌」,就是$3M+2$張牌,可以拆成一個將、$x$個刻子和$y$個順子,其中$x,y\geq 0;x+y=M$。
而聽某張牌的意思是,當前手上持有的$3M+1$張牌加上那張牌之後就會成為和牌。
第一行包含兩個正整數$N,M$,表示牌的數字為$1 \sim N$,且手上持有$3M + 1$張牌。
對於所有測資,$9 \leq N \leq 400;4 \leq M \leq 1000$。
子任務(測資) | 額外限制 | 分數 |
1 (0~10) | $N=9,M=4$ | 30 |
2 (0~31) | 無 | 70 |
如果此牌為聽牌,則輸出一行,列出當前手上的牌聽那些牌(必須由小排到大),若此非聽牌,則輸出一行NO
。
Problem Set by Ting.H
No. | Testdata Range | Score |
---|---|---|
1 | 0~10 | 30 |
2 | 0~31 | 70 |