使用next_permutation()
2024-12-13 13:38:39
发布于:广东
16阅读
0回复
0点赞
使用 next_permutation() 将1~9这9个数字按照大小进行排列,将数组分组后判断是否符合要求
记得特判 a可能为0
#include<bits/stdc++.h>
using namespace std;
int num[] = {1,2,3,4,5,6,7,8,9};
int main(){
int a,b,c;
cin >> a >> b >> c;
if(a==0){
cout << "No!!!";
return 0;
}
bool flag = 0;
do {
int n1 = num[0]*100+num[1]*10+num[2];
int n2 = num[3]*100+num[4]*10+num[5];
int n3 = num[6]*100+num[7]*10+num[8];
if(n1*b==n2*a && n1*c==n3*a){
cout << n1 << " " << n2 << " " << n3 << endl;
flag = 1;
}
} while (next_permutation(num, num + 9));
if(!flag) cout << "No!!!";
return 0;
}
这里空空如也
有帮助,赞一个