根据平均数公式 S=(R1+R2)/2,代入已知的 R1 和 S 计算 R2=2S-R1。
OJ: kattis
题目 ID: r2
难度:入门
标签:haskell
日期: 2026-07-09 21:46
题意
输入两个整数
思路
移项得
重点是用 Haskell 读取多个整数:
words 按空格分割,map (read :: String -> Int) 转为整数,
类型注解是必须的,否则 GHC 无法推断 read 的目标类型。
代码
haskell
{-
Author by Rainboy blog: https://rainboylv.com github: https://github.com/rainboylvx
rbook: -> https://rbook.roj.ac.cn https://rbook2.roj.ac.cn
rainboy的学习导航网站: https://idx.roj.ac.cn
create_at: 2026-07-09 21:58
update_at: 2026-07-09 21:58
-}
main = do
str <- getLine
let [r1,s] = map read . words $ str :: [Int]
print (2*s - r1)复杂度
时间复杂度
总结
Haskell 中读取多个整数并做算术运算的标准模式:
getLine → words → map read :: [Int] → 计算 → print。