2310. 直角三角形

1000ms 256MB 简单 枚举算法
题目描述
松鼠阿奇在魔法森林里收集到了一根长度为 $c$ 的魔法橡木枝。它计划用它为自己的树屋搭建一个直角三角形的滑滑梯支架。 为了保证滑滑梯的稳定性,支架的两条直角边 $a$ 和 $b$ 的长度必须都为**正整数**,且满足 $a \le b$(即底边不超过高度)。因为树屋的空间有限,阿奇希望占地面积尽可能小,所以要求**底边长 $a$ 尽可能小**。 已知斜边长度 $c$,请你编写程序帮阿奇计算出满足条件的直角边 $a$ 和 $b$ 的长度。
输入格式
一行,包含一个正整数 $c$ ($1 \le c \le 10000$)。
输出格式
一行,包含两个正整数 $a$ 和 $b$,中间用空格隔开。保证有整数解。如果有多个可能的答案,请确保 $a$ 尽可能的小。
样例 1
输入 (Input)
5
输出 (Output)
3 4
- 对于所有数据:$1 \le c \le 10000$。 - **提示**: 根据勾股定理: $$a^2 + b^2 = c^2$$ 由于需要让 $a$ 最小,可以通过循环让 $a$ 从 $1$ 开始递增枚举,计算出 $b = \sqrt{c^2 - a^2}$,判断 $b$ 是否为整数。因为 $a \le b$,所以循环的上限满足 $a^2 \le \frac{c^2}{2}$。
自测终端 stdin → stdout
输入 stdin
CtrlShiftEnter
输出 stdout

                
错误 stderr

                
CtrlEnter提交
自动保存已开启
操作成功
wzs_oj@kernel:~ — wzs-sh
guest@wzsoj:~$
刷新页面 F5
复制 Ctrl+C
粘贴 Ctrl+V
搜索题目
站点公告
今日神谕
CSP 倒计时
排行榜
我的提交
Esc 关闭 Enter 跳转 支持模糊匹配数字