Bài toán lập trình khó mong các anh giúp

Em có đề như sau:

Cho P(x) là hàm tính tổng tất cả các ước số của X (Trừ 1 và X).

Ví dụ P(20) = 2 + 4 + 5 + 10 = 21

Viết chương trình C để tìm được số a, b bất kì thỏa mãn

P(a^5) = b^2

Mong các anh giúp em

Bốc bừa a = 1 -> b = 0 luôn, khỏi nghĩ :kissing:

5 Likes

có giới hạn giá trị của a, b ko bạn?

1 Like

Không anh ạ, anh giúp em với

Có 1 tính chất thế này:

P(p^k)  // p là số nguyên tố bất kì, k nguyên dương
= p^(k-1) + p^(k-2) + ... + p

chia hết cho p nhưng không chia hết cho p^2 -> P(p^k) không thể là số chính phương (hay không thể là bình phương của 1 số nguyên nào đó).

Do vậy, bạn có thể khử được khá nhiều khả năng.

2 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?