[C10_QT_23] Không tương đồng

Xem dạng PDF

Gửi bài giải

Điểm: 1,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, Python

Hai số nguyên dương ~n~ và ~m~ được gọi là hai số không tương đồng khi chúng khác nhau và không tồn tại hai số nguyên dương ~p,\ q~ ~(p \ne 1,\ q \ne 1,\ p \ne q)~ sao cho cả ~p~ và ~q~ đều là ước của cả ~n~ và ~m~. Ví dụ: ~6~ và ~8~ là hai số không tương đồng bởi chúng chỉ có ~2~ số ~1, 2~ là ước của cả hai số (~6~ và ~8~), nhưng chỉ có ~1~ số khác ~1~; ~12~ và ~18~ không phải là hai số không tương đồng vì có đến ba số khác ~1~ là ~2, 3, 6~ đều là ước của cả hai số.

Yêu cầu

Cho số ~n~ và hai số nguyên dương ~l,\ r~. Hãy tìm tất cả các số ~m~ với ~l \le m \le r~ sao cho ~n~ với ~m~ là hai số không tương đồng.

Dữ liệu đầu vào

Gồm hai dòng:

  • Dòng đầu tiên ghi số nguyên dương ~n~ ~(1 \le n \le 10^9)~.
  • Dòng tiếp theo ghi hai số nguyên dương ~l,\ r~ ~(1 \le l \le r \le 10^9,\ r - l \le 1000)~.

Dữ liệu đầu ra

Gồm hai dòng:

  • Dòng thứ nhất ghi số nguyên dương ~k~ là số lượng các số ~m~ không tương đồng với ~n~ trong đoạn nguyên từ ~l~ đến ~r~.
  • Dòng thứ hai ghi ~k~ số nguyên dương, các số ghi cách nhau dấu cách, là các số không tương đồng với ~n~ tìm được ghi theo thứ tự tăng dần.

Ràng buộc dữ liệu

  • Có 35% số test tương ứng với 35% số điểm với ~n \le 100,\ 1 \le l \le r \le 100~.
  • Có 65% số test tương ứng với 65% số điểm không có ràng buộc gì thêm.

Ví dụ

Ví dụ 1
INPUT
6
8 12
OUTPUT
4
8 9 10 11

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.