练习题库
写好解答,按下判题——浏览器在你的设备上逐个运行隐藏测试点。不用账号,草稿本地保存。Ctrl+Enter 直接判题。
题目正文目前是英文版(代码通用),中文版逐题翻译中。
入门
- 1. 两数之和 I/O + 解析
ReadLine、Split、int.Parse——每个程序都建立在其上的"读 → 算 → 打印"循环。
- 2. 1 到 N 求和 循环 + 累加器
累加器模式,外加高斯的 O(1) 公式——两种解法,同一组测试。
- 3. 三数取最大 if/else + 边界
带负数和平局的隐藏测试——把 max 初始化成 0 会咬你。
- 4. 数位数 while + 除法
% 10 / 10 拆位循环,n = 0 和负数输入是陷阱。
- 5. 数位和 拆位
和数位数同一个拆位循环,只是从计数换成累加——1234 → 10。
- 6. 闰年 布尔逻辑
能被 4 整除、不能被 100 整除、除非能被 400 整除——1900 和 2000 是隐藏陷阱。
进阶
- 7. 反转数字 数位重建
12345 → 54321,用 rev = rev * 10 + n % 10——以及为什么 1000 正确地变成 1。
- 8. 回文数 模式复用
回文数等于它自己的反转——复用上一题的模式再比较。
- 9. 阶乘 累加器 + 溢出
n 最大 12——13! 会溢出 int。约束本身就是课程。
中等
- 10. 星号金字塔 嵌套循环 + 精确输出
前导空格也是答案的一部分——判题器连空格一起比。
- 11. 最大公约数 欧几里得算法
gcd(a, b) = gcd(b, a mod b)——至今仍在天天使用的最古老算法,只要三行。
- 12. 素数判定 试除 + 平方根
只试除到 √n,找到因子立刻 break——1、25 和一个六位数素数在测试里。
- 13. 斐波那契数 滑动对
滑动对只要 45 次循环,朴素递归要二十亿次——同样的数学。
-
14. 十进制转二进制 进制转换
% 2 和 / 2 的经典循环,零是陷阱。
-
15. 数素数个数 嵌套循环
内层是素数判定,break 决定成败。
-
16. 水仙花数 数位逻辑
153 = 1³+5³+3³,拆位后立方累加。
-
17. 矩阵对角线求和 多行输入
第一次读多行输入——不需要存整个矩阵。
-
18. 单词计数 字符串
连续空格产生空片段,只数非空的。
判题怎么工作
你的代码在和练习场同一个浏览器内引擎里运行,每个隐藏测试点跑一次。输出逐行比较,忽略行尾空白。失败的测试会并排展示输入、期望输出和你的输出——差异本身就是教材。