B3931 [语言月赛 202402] 射箭 题解

· · 题解

Source & Knowledge

2024 年 2 月语言月赛,由洛谷网校入门计划/基础计划提供。

题目大意

给定三个正整数 x, y, z,判断其中是否有一个整数大于剩余两个整数之和。如果有则输出 1,否则输出 0

题目分析

可以发现,「有一个整数大于剩余两个整数之和」仅有以下三种情况:

以上三种情况只要有任意一种成立,即输出 1。因此可以使用 if 结构和 || 运算符解决。

|| 是 C++ 中的逻辑运算符,表示逻辑或(OR)操作。在 C++ 中,|| 运算符用于连接两个条件表达式,只要其中一个表达式为真(true),整个表达式就会被视为真。

核心代码如下:

if (x > y + z || y > x + z || z > x + y) {
    cout << 1 << endl;
} else {
    cout << 0 << endl;
}

视频讲解