P146SUMF - ROUND 6F - Dãy số kì diệu

Link Sub: http://www.spoj.com/PTIT/problems/P146SUMF/
Người Gửi: Sai

  • Problem:

Cho trước một số nguyên không âm n, nhiệm vụ của bạn là tìm số nguyên k nhỏ nhất, sao cho dãy số n, 2n, 3n, ..., kn có chứa đầy đủ các chữ số từ 0 đến 9.
Input
Gồm nhiều bộ test. Mỗi test gồm một số nguyên dương n trong phạm vi từ 1 tới 200 000 000.
Output
Với mỗi test, in ra trên một dòng số nguyên k thỏa mãn yêu cầu.
Example:
Input
1
10
123456789
3141592
Output:
10
9
3
5

  • Solution:

Bài này cư trâu thôi vì giới hạn chỉ 200 0000 000. - Tạo mảng đánh dấu cho các số 0 và 9; - Với mỗi số S= n*1, n*2,... ta sẽ phân tích từng chữ số bằng toán tử '/' và '%' và đánh dấu các chữ số vào mảng. - Kiểm tra mảng đã đủ 0 đến 9 chưa? Chưa đủ thì lặp lại cho tới khi nào đủ thì thôi ^^. *Chú ý: Bạn phải dùng while (cin>>n) or while (scanf (..)) để chạy. Điều này có nghĩa là: trong khi input còn đưa vào thì còn tính toán :v

  • Code:

C++:



JAVA:


Share this

Related Posts

Previous
Next Post »