在C++中查詢滿足給定條件的數字a和b
假設我們有一個整數n。我們的任務是找到兩個數字a和b,滿足以下三個條件。
- a mod b = 0
- a * b > n
- a / b < n
如果找不到這樣的數對,則列印-1。
例如,如果數字n = 10,則a和b可以是a = 90,b = 10。這滿足給定的規則。
為了解決這個問題,我們將遵循以下步驟:
- 令b = n。可以使用這三個條件找到a
- 當a是b的倍數時,a mod b = 0
- a / b < n,所以a / b = n – 1,小於n
- (a * b > n) => a = n
示例
#include<iostream> using namespace std; void findAandB(int n) { int b = n; int a = b * (n - 1); if (a * b > n && a / b < n) { cout << "a: " << a << endl; cout << "b: " << b; }else cout << -1 << endl; } int main() { int n = 10; findAandB(n); }
輸出
a: 90 b: 10
廣告