144 - Student Grants

某國政府為了降低申請助學貸款的意願,設計了一套費時而又冗長的請款流程,每位申請的學生會收到一張提款卡,記錄目前已提領的金額,一開始已提領金額當然為零,且每年的提領上限為 $\$ 40$。詭異的是,領款時間只限該學生生日後的第一個銀行工作日,所以通常一天最多只有 25 個學生會來領錢。

學生必須拿著提款卡到特定的提款機領錢,這種提款機被設計成有極佳的安全性,它有兩層金庫,安全性較高的內層金庫有許多 $\$1$ 元硬幣,而安全性較低的外層金庫則負責儲放少量的 $\$1$ 元硬幣供學生直接提領。為了降低被搶所造成的損失,只有當外層金庫的硬幣用完的時候,才會由系統自動把硬幣由內層移到外層。每天一開始外層金庫會是空的,且馬上會有 $\$1$ 元硬幣由內層移往外層,之後當外層金庫的硬幣被領完的時候,由內層移往外層的硬幣會增加到 $\$2$,下次再領完則再增加到 $\$3$ … 以此類推,直到到達某一個最大值 k 為止,下次移往外層的金額又會由 $\$1$ 開始累加。

每位學生排隊領 $\$40$,領錢時會插入自已的提款卡,提款卡會記錄已提領的總金額。每次領錢最多只能領到外層金庫內的硬幣金額,若學生總提領金額未到達 $\$$40,則他會拿回他的提款卡到後面重新排隊,當然,此時外庫金庫的金額為零,系統會馬上補上一筆錢到外層金庫。若外層金庫的金額加學生已提領總額大於 $\$$40,則系統只會發出剛好總額達到 $\$$40 的錢給學生,剩下在外層金庫的錢會留下來給下一位學生提領。

請寫程式處理兩個整數為一組的資料,N表示學生數($1 \le N \le 25$),k表示提款機硬幣由內移往外層的最大限制($1 \le k \le 40$),請依序輸出學生領滿 $\$40$ 後離開的次序。

Input and Output

輸入每列有兩個整數 N 與 k,(0, 0)表示資料結束。

針對每組輸入,請依序輸出領完錢離開隊伍的學生編號,學生的編號是最一開始排隊的次序,並以1開始。輸出編號時請設寬度為 3,向右對齊。

Sample input

5 3
0 0

Sample output

1  3  5  2  4