在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
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP