Bài 2. Số đặc biệt (HSG 9 Ninh Bình 2025-2026)

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 900 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Số đặc biệt là số chia hết cho tích các chữ số của nó. Ví dụ, số 5 là số đặc biệt vì 5 chia hết cho 5; số 12 là số đặc biệt vì 12 chia hết cho 2 (\(1 \times 2 = 2\)); số 102 không phải là số đặc biệt vì tích các chữ số của nó bằng 0 (\(1 \times 0 \times 2 = 0\)).

Yêu cầu: Cho dãy số \(A\) gồm \(n\) số nguyên dương \(a_1, a_2, \ldots, a_n\) và 2 số nguyên dương \(l, r\). Hãy liệt kê các số đặc biệt theo đúng thứ tự xuất hiện trong đoạn \(a_l, a_{l+1}, \ldots, a_r\).

Input

  • Dòng đầu theo thứ tự gồm ba số nguyên dương \(n, l, r\) (\(1 \leq n \leq 10^5\); \(1 \leq l \leq r \leq n\)).
  • Dòng thứ hai gồm \(n\) số nguyên dương \(a_1, a_2, \ldots, a_n\) (\(a_i \leq 10^9\); \(1 \leq i \leq n\)).

Output

  • Gồm duy nhất một dòng ghi các số đặc biệt tìm được, các số cách nhau một dấu cách. Nếu không tìm được số đặc biệt nào thì in ra -1.

Example

Test 1

Input
8 2 5
2 12 15 20 5 28 36 39
Output
12 15 5
Note

Xét đoạn từ \(a_2\) đến \(a_5\): các phần tử là \(12, 15, 20, 5\).

  • \(12\): tích chữ số \(= 1 \times 2 = 2\), \(12\) chia hết cho \(2\) → đặc biệt.
  • \(15\): tích chữ số \(= 1 \times 5 = 5\), \(15\) chia hết cho \(5\) → đặc biệt.
  • \(20\): tích chữ số \(= 2 \times 0 = 0\) → không đặc biệt.
  • \(5\): tích chữ số \(= 5\), \(5\) chia hết cho \(5\) → đặc biệt.

Bình luận (7)

Mới nhất
Tải bình luận...

Kỳ thi: