突发奇想用排列做,结果没超时,但答案错了
查看原帖
突发奇想用排列做,结果没超时,但答案错了
1142704
Ye_Cha楼主2024/11/28 10:56
#include<iostream>
#include<vector>
#include<algorithm>
#include<string>
using namespace std;

int main()
{
	int a,b,c; cin >> a >> b >> c;
	string s = "123456789";
	while (next_permutation(s.begin(), s.end()))
	{
		if ((stoi(s.substr(0, 3)))*b == (stoi(s.substr(3, 3)))*a 
		&&(stoi(s.substr(3, 3)))*c == (stoi(s.substr(6, 3)))*b 
		&& (stoi(s.substr(0, 3))) * c == (stoi(s.substr(6, 3))) * a)
		{
			vector<int>x;
			x.push_back(stoi(s.substr(0, 3)));
			x.push_back(stoi(s.substr(3, 3)));
			x.push_back(stoi(s.substr(6, 3)));
			sort(x.begin(), x.end());
			for (int i : x)cout << i << ' ';
			cout << endl;
		}
	}
	
	return 0;
}
2024/11/28 10:56
加载中...