【Codeforces Round #635 (Div. 2) A】Ichihime and Triangle

题目链接

点我呀

翻译

给你3条边x, y, z的范围, 且满足x < y < z, 让你选出3条合法的边, 使得这3条边能组成三角形。

保证答案总是存在。

题解

因为x < y < z, 所以x(y)和z相加的话, 肯定是大于y(x)的。 因此只要判断x+y是不是大于z就可以了。

因为说了一定会有解, 所以, 找最大的x和y, 和最小的z输出。一定能满足x+y > z的。

不满足怎么办? 出题人出来挨打吧!

代码

#include<bits/stdc++.h>
#define ll long long
#define rei(x) scanf("%d",&x)
#define rel(x) scanf("%I64d",&x)
#define rep1(i,a,b) for (int i = a;i <= b;i++)
#define rep2(i,a,b) for (int i = a;i >= b;i--)
using namespace std;

const int N = 1e6;

int T,a,b,c,d;

int main(){
    #ifdef LOCAL_DEFINE
        freopen("D:\\rush.txt","r",stdin);
    #endif
    ios::sync_with_stdio(0),cin.tie(0);
    rei(T);
    while(T--){
        rei(a);rei(b);rei(c);rei(d);
        cout<<b<<" "<<c<<" "<<c<<endl;
    }
    return 0;
}
上一篇:[nowcoder5667H]Happy Triangle


下一篇:8.14动态规划例题:数字三角形