视频加载失败

题解:CF1337A Ichihime and Triangle

题解:CF1337A Ichihime and Triangle
278 字
1 分钟
题解:CF1337A Ichihime and Triangle

看到大佬们基本都是直接输出 bb cc cc 了事儿,一身反骨有其它构造方法的我表示不服,遂作此篇。


众所周知,两边之和大于第三边,所以,如果 b+c>db + c > d,那么 bb、cc、dd 就是正确的。那如果不满足呢?在题目条件下 b+c>b+c−1b + c > b + c - 1,那么这一组就是合理的。

分别验证下。满足 b+c>d,x=b,y=c,z=db + c > d, x = b, y = c, z = d,显然都满足条件。另外一组也是类似的。极端情况下 b+c−1>db + c - 1 > d?那么可以得到 b+c>d+1b + c > d + 1,显然也满足条件,所以方法正确。


ACCode:

#include <bits/stdc++.h>
using namespace std;
int num;
void run(int a, int b, int c, int d) { // a <= x <= b b <= y <= c c <= z <= d
if (b + c - 1 <= d)
printf ("%d %d %d\n", b, c, b + c - 1);
else
printf ("%d %d %d\n", b, c, d);
}
int main() {
scanf("%d", &num);
for (int i = 0; i < num; i++) {
int a, b, c, d;
scanf("%d%d%d%d", &a, &b, &c, &d);
run(a, b, c, d);
}
return 0;
}

AC记录~

理解万岁!

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
题解:CF1337A Ichihime and Triangle
https://www.leo2011.eu.org/posts/cf-1337a/
作者
Block_Fish
发布于
2024-05-13
许可协议
SATA

评论区

Profile Image of the Author
Block_Fish
大胆假设,小心求证。——胡适
公告
网站全面重构,有问题欢迎联系积木鱼!
分类
标签
最新动态
站点统计
文章
56
分类
7
标签
17
总字数
84,805
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Netlify CI
博客版本
Firefly v6.16.8
文章许可
SATA

当前页面没有目录

文章目录

当前页面没有目录