✨ feat(eular_12.py):优化质数测试参数并修复组合数计算逻辑
✨ feat(eular_13.py):新增超大整数加法解决方案 📝 docs(eular_13.md):添加算法说明文档 ✨ feat(eular_14.py):新增Collatz序列最长链计算 📝 docs(eular_14.md):添加性能优化说明 ✨ feat(eular_15.py):新增网格路径组合数学解法 📝 docs(eular_15.md):添加组合数学详细说明 ✨ feat(eular_16.py):新增幂数字和计算功能 ✨ feat(eular_16.hs):新增Haskell版本实现
This commit is contained in:
14
solutions/0016.PowerDigitSum/eular_16.hs
Normal file
14
solutions/0016.PowerDigitSum/eular_16.hs
Normal file
@@ -0,0 +1,14 @@
|
||||
import Data.Char (digitToInt)
|
||||
|
||||
-- 计算 b^n 的各位数字之和
|
||||
powerDigitSum :: Integer -> Integer -> Integer
|
||||
powerDigitSum b n = sum . map digitToInt . show $ b ^ n
|
||||
|
||||
-- 示例使用
|
||||
main :: IO ()
|
||||
main = do
|
||||
-- 测试用例
|
||||
print $ powerDigitSum 2 15 -- 32768 → 3+2+7+6+8 = 26
|
||||
print $ powerDigitSum 10 100 -- 1后跟100个0 → 1
|
||||
print $ powerDigitSum 3 3 -- 27 → 2+7 = 9
|
||||
print $ powerDigitSum 2 1000
|
||||
Reference in New Issue
Block a user