【題目敘述】https://vjudge.net/problem/LightOJ-1023
#include <bits/stdc++.h>
using namespace std;
int t, n, k, used[26], anscnt;
string ans;
void f(int cnt){
if (cnt == n){
cout << ans << "\n";
anscnt++;
return;
}
if (anscnt == k) return;
for (int i = 0; i < n; i++){
if (!used[i]){
used[i] = 1;
ans += (char)('A'+i);
f(cnt+1);
used[i] = 0;
ans.pop_back();
}
}
}
int main(){
cin >> t;
for (int Case = 1; Case <= t; Case++){
cin >> n >> k;
anscnt = 0;
cout << "Case " << Case << ":\n";
f(0);
}
}