PTIT122C - Giai thừa 2

Người Gửi: Dương Lee

  • Problem:

Tìm số lần xuất hiện của chữ số x trong số n! (n giai thừa).  Giới hạn:  
-          1<=n<=365  
-          x là các chữ số từ 0 đến 9
Input
-          Dòng đầu là số bộ test T (<=20)  
-          Sau đó là T dòng, mỗi dòng gồm 2 số nguyên cách nhau bởi dấu cách lần lượt là n và x
Output
-          Mỗi bộ test in trên một dòng đáp án.
Example:
Input
2
5 2
7 0
Output:
1
2

  • Solution:

Không còn cách nào khác phải xử lí số nguyên lớn thôi mọi người ^^. Chuyển số sang mảng chữ số, nhân từng mảng với mảng theo quy tắc tính toán thông thường. 
- Code dưới đây mình tính trước khoảng 19! để mục đích là giảm time tối đa nhưng có vẻ không hiệu quả lắm các bạn có thể nhân hai mảng luôn cũng đc.

  • Code:

C++:



JAVA:


Share this

Related Posts

Previous
Next Post »