[语言月赛 202407] value 题解
kkksc03
·
·
题解
Source & Knowledge
2024 年 7 月语言月赛,由洛谷网校入门计划/基础计划提供。
题目大意
已知 x, y, z, w,求一个正整数 c,使得 x = z \times c 且 y = w \times c。如果没有则输出 -1。
## 题目分析
**解法 1:**
假设 $z$ 和 $w$ 都不为 $0$,可以得到:$c=\frac{x}{z}$ 和 $c=\frac{y}{w}$。这种情况下,如果 $\frac{x}{z}=\frac{y}{w}$ 并且计算结果刚好为整数,则可以计算出 $c$。如果不一致,或者不是整数则无解。
假设 $z$ 和 $w$ 至少有一个为 $0$:
- 若 $z = 0$,则 $x$ 必须为零才可能有解,考察 $c=\frac{y}{w}$ 的情况;
- 若 $z = 0$,和上面一种情况类似;
- 若两个都是零,但题目已经说了不会四个都是零,那么 $x$ 和 $y$ 存在不是 $0$ 的情况。无解。
**解法 2:**
考虑 $x = z \times c$,假设 $c$ 有正整数解,则 $c$ 范围应该在 $[1,1000]$ 之间($x$ 取最大值,$z$ 取最小值)。$y$ 相关也是这样的。所以将 $c$ 从 $1$ 枚举到 $1000$,如果出现符合要求的情况则直接输出,否则输出 `-1`。
## 视频题解
