C语言满分代码:L1-050 倒数第N个字符串 (15分)
生活随笔
收集整理的這篇文章主要介紹了
C语言满分代码:L1-050 倒数第N个字符串 (15分)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
立志用更少的代碼做更高效的表達(dá)
給定一個(gè)完全由小寫(xiě)英文字母組成的字符串等差遞增序列,該序列中的每個(gè)字符串的長(zhǎng)度固定為 L,從 L 個(gè) a 開(kāi)始,以 1 為步長(zhǎng)遞增。例如當(dāng) L 為 3 時(shí),序列為 { aaa, aab, aac, …, aaz, aba, abb, …, abz, …, zzz }。這個(gè)序列的倒數(shù)第27個(gè)字符串就是 zyz。對(duì)于任意給定的 L,本題要求你給出對(duì)應(yīng)序列倒數(shù)第 N 個(gè)字符串。
輸入格式:
輸入在一行中給出兩個(gè)正整數(shù) L(2 ≤ L ≤ 6)和 N(≤10?5??)。
輸出格式:
在一行中輸出對(duì)應(yīng)序列倒數(shù)第 N 個(gè)字符串。題目保證這個(gè)字符串是存在的。
輸入樣例:
3 7417
輸出樣例:
pat
其實(shí)本題用C++更好些, 但考慮到很多初學(xué)的朋友找C代碼很困難(別問(wèn)我怎么知道的ヽ(ー_ー)ノ), 因此就用C編寫(xiě), 如果對(duì)大家產(chǎn)生了幫助, 還請(qǐng)點(diǎn)個(gè)贊哦~
#include <stdio.h> #include <math.h>int main(){int L, N; scanf("%d %d", &L, &N);N = pow(26, L) - N;for(int i = 0; i < L; i++){int r = pow(26, L - i - 1);int t = N / r;N %= r;printf("%c", (char)('a'+t));}return 0; }
每日一句
零星的變好,最后也會(huì)如星河般閃耀
總結(jié)
以上是生活随笔為你收集整理的C语言满分代码:L1-050 倒数第N个字符串 (15分)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 28行满分代码:L1-048 矩阵A乘以
- 下一篇: 4行代码满分:L1-052 2018我们