Codeforces Round #656 (Div. 3) A. Three Pairwise Maximums (数学)

-
题意:给你三个正整数\(x\),\(y\),\(z\),问能够找到三个正整数\(a\),\(b\),\(c\),使得\(x=max(a,b)\),\(y=max(a,c)\),\(z=max(b,c)\).
-
题解:容易看出,\(a,b,c\)中最大的数一定会在\(x,y,z\)中出现两次,所以我们只要判断\(x,y,z\)中最大的两个数是否相等即可,如果满足,输出最大值和最小值和一个\(1\).
-
代码:
int t; int a[3]; int main() { ios::sync_with_stdio(false);cin.tie(0); cin>>t; while(t--){ cin>>a[0]>>a[1]>>a[2]; sort(a,a+3); if(a[2]==a[1] && a[1]>=a[0]){ cout<<"YES"<<endl; cout<<a[2]<<" "<<a[0]<<" "<<1<<endl; } else cout<<"NO"<<endl; } return 0; }
𝓐𝓬𝓱𝓲𝓮𝓿𝓮𝓶𝓮𝓷𝓽 𝓹𝓻𝓸𝓿𝓲𝓭𝓮𝓼 𝓽𝓱𝓮 𝓸𝓷𝓵𝔂 𝓻𝓮𝓪𝓵
𝓹𝓵𝓮𝓪𝓼𝓾𝓻𝓮 𝓲𝓷 𝓵𝓲𝓯𝓮

浙公网安备 33010602011771号