題目描述
如果乙個字串中存在相鄰的重複子串,則稱為容易的串,反之稱為困難的串。輸入正整數n和l,輸出由前l個大寫字母組成的,字典序第n小的困難的串。l不大於5,n不大於20。
輸入在一行輸入n和l的值,遇到檔案末尾結束。
輸出在一行輸出字典序第n小的困難的串。
樣例輸入
7
3
樣例輸出
abacaba
#include
using
namespace std;
int n, l, s[20]
=, cnt =0;
intdfs
(int now)
for(
int i =
0; i < l;
++i)
if(equal)}if
(flag)if(
!dfs
(now +1)
)return0;
}return1;
}int
main()
困難的串問題
問題描述 如果乙個子婦產包含兩個相鄰的重複子串,則稱它是 容易的串 其他的串稱為 困難的串 例如,bb abcdacabcab abcdabcd都是容易的,而d dc abdab cbabca都是困難的。輸入乙個正整數n和l,輸出由前l個字元組成的 字典序第n小的困難的串。解這個問題我用的是dfs,...
困難的串(dfs)
困難的串 題意 如果乙個字串包含兩個相鄰的重複子串,則稱它是 容易的串 其他串稱為 困難的串 例如,bb abcdabcd都是容易的串,而d dc abdad cbabcba都是困難的串。輸入正整數n和l,輸出由前l個字元組成的 字典序第k個困難的串。例如,當l 3時,前7個困難的串 分別為a ab...
困難的串 回溯法
題目 如果乙個字串包含兩個相鄰的重複字串,則稱它是 容易的串 其他串稱為 困難的串 輸入正整數n和l,輸出由前l個字元組成的 字典序第n的困難的串。例如,當l 3時,前7個困難的串分別是a ab aba abac abaca abacab abacaba。輸入保證答案不超過80個字元。解題思路 從左...