1140 Jam的計數法

2022-05-03 17:24:09 字數 1386 閱讀 5492

2023年noip全國聯賽普及組

時間限制: 1 s

空間限制: 128000 kb

題目等級 : ** gold

題解檢視執行結果

jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的(使用相同個數的字母),英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的「數字」稱為jam數字。在jam數字中,每個字母互不相同,而且從左到右是嚴格遞增的。每次,jam還指定使用字母的範圍,例如,從2到10,表示只能使用這些字母。如果再規定位數為5,那麼,緊接在jam數字「bdfij」之後的數字應該是「bdghi」。(如果我們用u、v依次表示jam數字「bdfij」與「bdghi」,則u,且不存在jam數字p,使u)。你的任務是:對於從檔案讀入的乙個jam數字,按順序輸出緊接在後面的5個jam數字,如果後面沒有那麼多jam數字,那麼有幾個就輸出幾個。

輸入描述 input description

有2行,第1行為3個正整數,用乙個空格隔開:

s t w

(其中s為所使用的最小的字母的序號,t為所使用的最大的字母的序號。w為數字的位數,這3個數滿足:1≤s≤26, 2≤w≤t-s )

第2行為具有w個小寫字母的字串,為乙個符合要求的jam數字。

所給的資料都是正確的,不必驗證。

輸出描述 output description

最多為5行,為緊接在輸入的jam數字後面的5個jam數字,如果後面沒有那麼多jam數字,那麼有幾個就輸出幾個。每行只輸出乙個jam數字,是由w個小寫字母組成的字串,不要有多餘的空格

樣例輸入 sample input

2 10 5

bdfij

樣例輸出 sample output

bdghi

bdghj

bdgij

bdhij

befgh

資料範圍及提示 data size & hint

分析:面對這種題首先要審清題意.

搞清楚題意後直接模擬就行了.

(1)初始串從後往前找.找到第乙個"符合"的位置(想想怎麼符合).

(2)從這個位置開始修改.

#include#include

#include

using

namespace

std;

char str[30];int

s,t,w;

intjudge()

}str[loc]+=1

;

for(int i=loc+1;i)

return0;

}int

main()

return0;

}

codevs 1140 Jam的計數法

題目描述 description jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的 數字 稱為 ...

Codevs 1140 Jam的計數法

jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的 數字 稱為jam數字。在jam數字中,每個字母...

Jam的計數法(codevs 1140)

題目描述 description jam是個喜歡標新立異的科學怪人。他不使用阿拉伯數字計數,而是使用小寫英文本母計數,他覺得這樣做,會使世界更加豐富多彩。在他的計數法中,每個數字的位數都是相同的 使用相同個數的字母 英文本母按原先的順序,排在前面的字母小於排在它後面的字母。我們把這樣的 數字 稱為j...