Tôi được cung cấp số N và cho chúng áp dụng các quy tắc M về thứ tự của chúng. Các quy tắc được thể hiện trong một cặp các chỉ mục và mỗi cặp (A, B) nói rằng số có chỉ số A (số thứ A) phải sau SAU số thứ B - nó không phải là bên cạnh anh ta .Tìm tất cả các hoán vị phù hợp với một bộ quy tắc
Ex: N = 4
1 2 3 4
M = 2
3 2
3 1
Output: 1234, 4213, 4123, 2134, 2143, 2413, 1423 ...Maybe there are even more:)
Thuật toán nên cung cấp cho tôi tất cả các hoán vị có sẵn mà không phá vỡ các quy tắc, như trong ví dụ - 3 phải luôn sau 2 và sau 1.
tôi đã cố gắng bruteforcing nhưng nó didn' t làm việc (mặc dù bruteforce nên làm việc ở đây, N là trong phạm vi (1,8).)
Bất kỳ ý tưởng?
Bạn có thể giải thích cách các số N đi vào điều này? Câu trả lời sẽ là gì nếu N's {1, 2, 3, 4}? –
Từ những gì tôi có thể thấy, số N bạn đã cung cấp không liên quan đến câu hỏi bạn đang hỏi. Điều này có đúng không? – sykora
N là bao nhiêu số, trong trường hợp này N = 4 vì có bốn số, 1..4. – VaioIsBorn