WODAY
Ngày Quốc tế Phụ nữ hay còn gọi là Ngày Liên Hiệp Quốc vì Nữ quyền và Hòa bình Quốc tế được tổ chức vào ngày 8 tháng 3 hàng năm. Ngày này được Liên Hiệp Quốc chính thức hóa vào năm 1977. Ở một số nước, ngày Quốc tế phụ nữ cũng là cơ hội để nam giới thể hiện tình cảm của mình với những người bạn khác giới hay những người thân là phụ nữ của họ. Năm nay, để thay đổi không khí cũng như tạo thêm hứng thú cho việc học giải thuật để giải quyết các bài toán tin trong lớp chuyên tin của bạn Võ Hòa Thuận, các bạn nữ thay vì muốn nhận hoa và quà lại đưa ra các bài toán hóc búa và yêu cầu được các bạn nam trợ giúp để lập trình giải các bài toán này. Trong số các bài toán có bài như sau:
Mỗi một số nguyên dương đều có thể biểu diễn dưới dạng tích của 2 số nguyên dương X,Y sao cho X≤Y. Nếu như trong phân tích này ta thay X bởi X-1 còn Y bởi Y+1 thì sau khi tính tích của chúng ta thu được hoặc là một số nguyên dương mới hoặc là số 0.
Ví Dụ : Số 12 có 3 cách phân tích 1x12 ,3x4 , 2x6 . Cách phân tích thứ nhất cho ta tích mới là 0: (1-1)x(12+1) = 0 , cách phân tích thứ hai cho ta tích mới 10 : (3-1)x(4+1) = 10 , còn cách phân tích thứ ba cho ta 7 : (2-1)x(6+1)=7 . Nếu kết quả là khác 0 ta lại lặp lại thủ tục này đối với số thu được . Rõ ràng áp dụng liên tiếp thủ tục trên, cuối cùng ta sẽ đến được số 0 , không phụ thuộc vào việc ta chọn cách phân tích nào để tiếp tục
Yêu cầu : Cho trước số nguyên dương N ( 1<=N≤100000) , hãy đưa ra tất cả các số nguyên dương khác nhau có thể gặp trong việc áp dụng thủ tục đã mô tả đối với N. Tuy không phải là một học sinh giỏi lập trình của lớp nhưng Thuận cũng muốn thể hiện tình cảm của mình. Hãy gúp bạn Thuận lập trình giải bài toán nói trên.
Input
- 1 dòng chứa số nguyên dương N<=10^5
Output
- Dòng đầu tiên ghi K là số lượng số tìm được
- Dòng tiếp theo chứa K số tìm được theo thứ tự tăng dần bắt đầu từ số 0 . Lưu ý : Có thể có số xuất hiện trên nhiều đường biến đổi khác nhau , nhưng nó chỉ được tính một lần trong kết quả.
Sample Input
12
Sample Output
6
0 3 4 6 7 10
Comments