[HSG_DB_25] Xoá số

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

Một buổi chiều đẹp trời, Tèo và Tý đang chơi với một dãy số gồm ~N~ phần tử, mỗi phần tử là một con số đầy bí ẩn. Tèo đố Tý: Viết chương trình chỉ giữ lại những số chia hết cho một số ~k~ mà Tý chọn, để dãy số trở nên "đẹp đẽ" và dễ nhìn hơn.

Tý đồng ý, nhưng cậu cũng muốn biết số nguyên dương nhỏ nhất mà chưa xuất hiện trong dãy ban đầu là gì, để biết con số nào còn thiếu trong trò chơi.

Yêu cầu

Hãy viết chương trình giúp bạn Tý:

a) Đếm số lượng và liệt kê các phần tử còn lại.

b) Tìm số nguyên dương nhỏ nhất không xuất hiện trong dãy.

Dữ liệu đầu vào

Gồm hai dòng:

  • Dòng 1: Hai số nguyên dương ~N~ và ~k~ ~(1 \le N \le 10^6, 1 \le k \le 10^9)~.
  • Dòng 2: ~N~ số nguyên ~a_1, a_2, \ldots, a_N~ ~(1 \le a_i \le 10^9)~.

Dữ liệu đầu ra

Gồm ba dòng:

  • Dòng 1: Số lượng phần tử còn lại sau khi loại bỏ các số không chia hết cho ~k~.
  • Dòng 2: In ra các phần tử còn lại theo thứ tự tăng dần, mỗi phần tử cách nhau bởi dấu cách.
  • Dòng 3: Số nguyên dương nhỏ nhất chưa xuất hiện trong dãy ban đầu.

Ràng buộc dữ liệu

  • Có 40% số test ứng với 40% số điểm của câu: ~1 \le N \le 10^4~;
  • Có 30% số test ứng với 30% số điểm của câu: ~10^4 < N \le 10^5~;
  • Có 30% số test ứng với 30% số điểm của câu: ~10^5 < N \le 10^6~.

Ví dụ

Ví dụ 1
INPUT
10 5
1 2 4 5 7 15 30 55 8 25
OUTPUT
5
5 15 25 30 55
3

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.