Những con đường về không
Submit solution
Points:
3 (partial)
Time limit:
3.0s
Java 10
5.0s
Memory limit:
977M
Author:
Problem types
Allowed languages
Ada, Assembly, Awk, C, C++, C11, CLANG, CLANGX, Classical, COBOL, Coffee, CSC, D lang, DART, F95, FORTH, Fortrn, GAS32, GO, Haskell, Itercal, Java, kotlin, LEAN, LISP, LUA, MONOVB, Nasm, OCAML, Pascal, Perl, php, PIKE, prolog, Pypy, Python, Ruby 2, RUST, Scala, SCM, SED, SWIFT, TCL, TUR, V8JS, VB, ZIG
Số nguyên dương n nếu phân tích thành tích hai số tự nhiên \(a * b (a \le b)\) thì nó sẽ sinh ra số tự nhiên \(m = (a-1)*(b+1)\) cứ tiếp tục như vậy nếu \(m > 0\) nó tiếp tục sinh ra số tiếp theo. Bài toán đặt ra cho số n nguyên dương nó sẽ sinh ra các con và các con lại tiếp tục sinh ra các cháu ... cứ như vậy tới khi sinh ra tới các số \(0\) thì sẽ tạo thành một cây.
Nam đang học thuật toán duyệt DFS và BFS để tìm ra tất cả các số mà sinh ra bởi số \(n\) cho trước nhưng chưa biết cài đặt như thế nào bạn hãy giúp Nam nhé.
Ví dụ: Với \(m= 12\) ta có cây được sinh ra như sau:
Input
Một số tự nhiên \(n\) \((1 \le n \le 10000)\).
Output
Liệt kê các giá trị sinh ra được từ \(n\) theo thứ tự tăng dần.
Ví dụ
Input
12
Output
0 3 4 6 7 10 12
Ví dụ 2
Input
18
Output
0 3 4 5 6 8 10 14 18
Comments