Tìm số (loop)

Xem dạng PDF

Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 256M
Input: FIND.INP
Output: FIND.OUT

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch

Cho số nguyên không âm ~M~ (~0≤M≤10^9~)

Yêu cầu:

Tìm số nguyên dương K nhỏ nhất sao cho tích các chữ số của ~K~ bằng ~M~

Dữ liệu:

Cho từ tệp văn bản FIND.INP chứa duy nhất số nguyên dương ~M~

Kết quả:

Ghi ra tệp văn bản FIND.OUT số nguyên dương ~K~. Nếu không tìm được ~K~, in ra -1

Ví dụ:

FIND.INP

0

FIND.OUT

10

FIND.INP

12

FIND.OUT

26


Bình luận

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



  • -1
    Archived  đã bình luận lúc 11, Tháng 8, 2026, 15:03 sửa 4

    Để làm được bài này thì các bạn chỉ cần sử dụng thuật toán tham lam, chia N lần lượt cho các số từ 9 đến 2 (Phải chia N đến khi không còn chia hết cho số đó nữa mới chuyển sang số tiếp theo). Nếu sau khi chia xong rồi vẫn còn dư thì in ra -1, còn nếu ngược lại không thì sắp xếp các thừa số từ bé đến lớn rồi in ra thôi :)


  • 0
    Lamdz  đã bình luận lúc 30, Tháng 1, 2026, 1:20

    làm kiểu j v ae


  • -2
    demo25_053  đã bình luận lúc 2, Tháng 4, 2025, 14:40

    demo25_051 là sao hả


  • -2
    demo25_051  đã bình luận lúc 2, Tháng 4, 2025, 0:11

    hả


  • -5
    khangxuanson  đã bình luận lúc 7, Tháng 3, 2025, 8:47

    Bình luận này đã bị ẩn vì có quá nhiều phản ứng tiêu cực. Nhấn để xem.