新手村Ⅱ
一定要先点击左上角的“参与作业”按钮,再开始做练习题哦~

目录
前言
题目列表
注意事项
提示
- T739783 验证子串
- T739786 Tenet
- T581151 双螺旋的秘密
- T672314 宏宇的编程作业
- T322483 魔法鱼的航程
- T739788 通讯费用汇算
- T323904 精灵之跃
- T322571 图书馆管理员思雨
- T322574 魔法卷轴的单词统计
- T322575 魔法蛇形阵
Python 3.10 官方文档相关章节
前言
There's more than one way to do it.
——Perl 俗语
在编程的世界中,条条大路通罗马。
如果某些题目让你感到没有头绪,可以看看「提示」章节,也许会找到一些灵感。
题目列表
| 序号 | 题目 | 知识点 |
|---|---|---|
| 0 | T739783 验证子串 | 字符串 |
| 1 | T739786 Tenet | 字符串 |
| 2 | T581151 双螺旋的秘密 | 字典 |
| 3 | T672314 宏宇的编程作业 | 字典 |
| 4 | T322483 魔法鱼的航程 | 基本运算(取模) |
| 5 | T739788 通讯费用汇算 | 基本运算(整除) |
| 6 | T323904 精灵之跃 | 数组 |
| 7 | T322571 图书馆管理员思雨 | 循环结构 & 数组 |
| 8 | T322574 魔法卷轴的单词统计 | 模拟 |
| 9 | T322575 魔法蛇形阵 | 模拟 |
注意事项
- 提交答案时,一定要将语言设置为“Python 3”(默认是 C++);
- 耐心读题,确保已经理解了题意、数据类型、输入输出要求后再作答;
- 计算机没有玄学,如果
WA (Wrong Answer)了,仔细分析原因,思考为什么出错,带着理由修改代码,而不是盲目修改代码; - 建议不要打印多余的空格和空行。
提示
0. T739783 验证子串
- 使用
in判断一个字符串是否在另一个字符串当中。 - 挑战:能否尝试不适用
in,而使用循环的方式解决这个问题?
1. T739786 Tenet
- 首先,你需要读取并处理好输入的句子,可以使用
str.split()方法切开每一个单词。 - 之后,你可以使用
reversed()函数来倒转单词。 - 挑战:不使用Python内置函数,你能否自己实现
reversed()函数?
2. T581151 双螺旋的秘密
- 使用字典即可。
3. T672314 宏宇的编程作业
- 可使用字典来解决此问题,注意临界条件的判断。
- 想了解进阶解法,可学习和了解
栈这一数据结构,Python中可以用list来模拟栈。
4. T322483 魔法鱼的航程
- 魔法鱼可以游很多天,但是一周只有七天。如何将游泳的天数转换到一个区间内?
- 这是求模运算
%的一个妙用!
5. T739788 通讯费用汇算
- 当费用超过70的时候,如何计算需要的费用?
- 可以尝试使用取整
\\运算
6. T323904 精灵之跃
- 计算差值序列,然后比对即可。
- 或者可以使用
set中的方法来解决
7. T322571 图书馆管理员思雨
可以考虑利用 dict 或 set 解决问题。
8. T322574 魔法卷轴的单词统计
使用 a.count(b) 统计字符串 a 中 b 的出现次数时,如果两个 b 之间有重叠,只会计算一个。
例如:
print('abbabbabba'.count('abba'))
输出结果是 2 而不是 3。
如果你想使用字符串的 count 方法,一定要注意这一个细节。如果要查找的子字符串「可能重叠」的话,需要考虑在当前场景下是否适合用这个方法。
9. T322575 魔法蛇形阵
- 创建一个大小为
n * n的二维列表:
grid = [[0] * n for _ in range(n)]
- 初中物理告诉我们,物体运动时,坐标 $(x, y)$ 与速度 $v$ 和时间 $t$ 的关系为:
$$ \begin{cases} x' = x + v_xt \ y' = y + v_yt \end{cases} $$
- 即经过时间 $t$ 后,物体新坐标 $(x', y')$ 为:
$$ \begin{cases} x' = x + \Delta x \ y' = y + \Delta y \end{cases} $$
- 这是典型的
模拟题。不要尝试一口气就输出答案,Let's think step by step! - 你可以手动模拟一下填充的过程,就可以发现蛇形阵的规律,然后再让计算机来模拟你的做法!
Python 3.10 官方文档相关章节
官方文档中的一些内容可能对初学者而言过于晦涩,难以理解,所以也不必强迫自己一开始就理解其中的全部内容——等用到时回头再看,自然就会有所感悟。