Phân lớp
Thứ Năm, 25 tháng 6, 2015
Tên
chương trình: CLASS.PAS
Gọi S(x) là số ước của số nguyên dương
x. Hai số nguyên dương x và y được gọi là hai số cùng lớp k nếu S(x) = S(y) = k
.
Ví dụ: S(6) = 4 vì 6 có bốn ước là 1, 2, 3, và 6.
S(8) = 4
S(7) = 2
S(13) = 2
Như vậy, 6 và 8 là hai số thuộc lớp 4 , 7 và 13 là hai số
thuộc lớp 2.
Cho N số nguyên dương a1, a2, ..., aN.
Hãy cho biết:
- Các số
đã cho được chia thành bao nhiêu lớp khác nhau.
- Số lượng
phần tử trong mỗi lớp là bao nhiêu?
Dữ liệu vào: Vào từ tập tin văn bản CLASS.IN:
Dòng đầu tiên ghi số nguyên N, 1 ≤
N ≤ 1000
Tiếp đến là N số nguyên dương a1, a2,
... ,aN, có thể viết trên nhiều dòng, mỗi số được viết cách nhau ít
nhất một dấu cách, 1 ≤ ai
≤ 65530
Kết quả: Đưa ra tập tin văn bản:
Dòng đầu tiên là số lớp S tìm được.
Tiếp đến là S dòng, mỗi dòng chứa hai giá trị k và d , trong
đó k là số ước của các số trong lớp, d là số phần tử có trong lớp k. Mỗi số được
cách nhau ít nhất bởi một dấu cách.
class.in
|
class.ou
|
5
6 2 13
7 8
|
2
2 3
|
All comments [ 0 ]
Your comments