题目链接:https://codeforces.com/contest/1385/problem/A
给出三个正整数 $x,y,z$,找出三个正整数 $a,b,c$ 使得 $x = max(a, b), y = max(a, c), z = max(b, c)$ 。
假设有 $a \le b \le c$ 满足条件,那么 $x,y,z$ 中一定会有两个 $c$,一个 $b$,$a$ 的范围为 $[1,b]$ 。
#include
using namespace std;
void solve() {
int a[3] = {}; cin >> a[0] >> a[1] >> a[2];
sort(a, a + 3);
if (a[1] != a[2]) {
cout << "NO" << "\n";
} else {
cout << "YES" << "\n";
cout << a[0] << ' ' << a[2] << ' ' << 1 << "\n";
}
}
int main() {
int t; cin >> t;
while (t--) solve();
}
手机扫一扫
移动阅读更方便
你可能感兴趣的文章