pat天梯赛L1-050. 倒数第N个字符串
生活随笔
收集整理的這篇文章主要介紹了
pat天梯赛L1-050. 倒数第N个字符串
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
L1-050. 倒數第N個字符串
時間限制400 ms內存限制65536 kB
代碼長度限制8000 B
判題程序Standard作者陳越
給定一個完全由小寫英文字母組成的字符串等差遞增序列,該序列中的每個字符串的長度固定為 L,從 L 個 a 開始,以 1 為步長遞增。例如當 L 為 3 時,序列為 { aaa, aab, aac, ..., aaz, aba, abb, ..., abz, ..., zzz }。這個序列的倒數第27個字符串就是 zyz。對于任意給定的 L,本題要求你給出對應序列倒數第 N 個字符串。
輸入格式:
輸入在一行中給出兩個正整數 L(2 <= L <= 6)和 N(<= 105)。
輸出格式:
在一行中輸出對應序列倒數第 N 個字符串。題目保證這個字符串是存在的。
輸入樣例:3 7417 輸出樣例:pat #include <iostream> using namespace std; int main() { int l, n, i, k = 0, t; int a[10]; cin>>l>>n; n -= 1; // 邊界處理,第n個就是下標為n-1 while (n) // 保存非0的各個位數 { t = n % 26; if (t) // 0~25分別對應正數的a~z,即倒數的z~a a[k++] = t; else a[k++] = 0; n /= 26; } for (; k < l; ++k) // 將不足位賦值0,對應a a[k] = 0; for (i = k - 1; i >= 0; --i) // 從末尾開始輸出 cout<<(char)(25 - a[i] + 'a'); // 0~25對應a~z輸出 cout<<endl; return 0; }總結
以上是生活随笔為你收集整理的pat天梯赛L1-050. 倒数第N个字符串的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: SpringCloud Ribbon实战
- 下一篇: 第四部分 Calendar使用示例