Chúng ta được cho một số N. Mục đích là tìm các cặp số từ 1 đến N sao cho tích của các cặp bằng tổng của các cặp.
Hãy cho chúng tôi hiểu với các ví dụ.
Đầu vào - N =11
Đầu ra - Đếm các cặp số không. từ 1 đến N với Sản phẩm chia hết cho Tổng của chúng là - 1
Giải thích - Số 3 và số 6 có tích 18 và tổng 9 chia hết cho 18.
Đầu vào - N =30
Đầu ra - Đếm các cặp số không. từ 1 đến N với Sản phẩm chia hết cho Tổng của chúng là - 12
Giải thích - Các cặp là - (3, 6), (4,12), (5, 20), (6, 12), (6, 30), (8, 24), (9, 18), (10, 15 ), (12, 24), (15, 30), (20, 30), (21, 28)
Số cặp - 12
Cách tiếp cận được sử dụng trong chương trình dưới đây như sau
Chúng tôi sẽ duyệt từ 1 đến N bằng cách sử dụng vòng lặp FOR hai lần. Với mọi, tôi tìm kiếm j sao cho tích của (i, j) chia hết cho tổng i + j. Số lượng tăng dần cho các cặp suc i, j sao cho i! =J.
-
Lấy một số N làm đầu vào.
-
Hàm Sum_N (N) nhận N và trả về số lượng các cặp sao cho tích các số chia hết cho tổng các số.
-
Đi ngang từ i =1 đến i
-
Chuyển từ j =i + 1 đến j <=N.
-
Lấy số lượng ban đầu là 0.
-
Với mỗi i và j, tính temp =(i * j)% (i + j).
-
Nếu tạm thời là 0 thì tổng chia hoàn toàn tích. Số lượng tăng dần.
-
Sau khi kết thúc tất cả các lần lặp, số đếm sẽ có tổng số các cặp như vậy.
-
Kết quả là số lượt trả lại.
Ví dụ
#include <bits/stdc++.h> using namespace std; int Sum_N(int N){ int count = 0; for (int i = 1; i < N; i++){ for (int j = i + 1; j <= N; j++){ int temp = (j * i) % (j + i); if (!temp){ count++; } } } return count; } int main(){ int N = 20; cout<<"Count of pairs of numbers from 1 to N with Product divisible by their Sum are: "<<Sum_N(N); return 0; }
Đầu ra
Nếu chúng ta chạy đoạn mã trên, nó sẽ tạo ra kết quả sau -
Count of pairs of numbers from 1 to N with Product divisible by their Sum are: 6