学而思编程每周练习赛-第01周-习题视频讲解与试题分析
01
第一周周赛试题分析
1.语言基础组:
T1 小于N的质数和:本题难度简单,考察质数判断,注意题目描述是小于N的所有质数;
T2 金币:本题难度简单,枚举每一天并把每天和其所在的阶段对应起来;
2.普及奠基组:
T1 字符串价值:本题难度简单,考察字符串基础,不区分大小写的情况,我可以把所有字符转成大写(或把所有字符转成小写),使用数组f[]记录每个字符是否第一次出现,只要某个字符x出现过就把f[x]=1;
T2 消除因子:本题难度中等,考察分解质因数,每次通过分解质因数可以得到n的最小质因子d,然后n减去d,直到n为0,这样可以拿到70分。考虑到如果n是偶数,那么n的最小质因子一定是2,且n减2之后也一定是偶数,这样每次减2,一共需要计算n/2次;
T3 平方序列:本题难度中等,主要考察全排列算法,需要对相同的排列进行去重,可以使用next_permutation()函数,该函数每次返回下一个字典序的排列,起到了去重作用,但无法进行过程中剪枝,从而拿不到满分。为了方便去重,可以先对原序列从小到达排序,在实现全排列递归函数过程中进行剪枝:
1. 避免相同元素在同一层级出现的情况;
2. 当前位置的元素和上一个位置的元素和必须是完全平方数在继续搜索。
3.普及进阶组:
T1 构造数列:本题难度中等,一个贪心题目,可以比较容易地总结出规律。但是需要注意字符串和数组的下标的运算;
T2 六面世界:本题难度较大,六边形地图上BFS,主要练习如何处理六角形地图,视频讲解了一种便于理解的平面坐标方法。实际上还有另一种立体坐标表示方法,广泛应用在游戏开发中,有兴趣可以参考 catlikecoding.com/unity/tutorials/hex-map。
02
第一周周赛成绩分析
1.语言基础组:
参考学员人数:174人
参考学员平均分:176.29分(满分300分)
每题平均分:
语言基础组每题平均分 | |||
题号 | 第1题 | 第2题 | 第3题 |
题目 | 小于N的质数和 | 金币 | 完全平方数 |
平均分 | 72.99 | 68.41 | 37.99 |
分数段人数统计:
语言基础组分数段人数统计表 | |||
分数段 | 人数 | 分数段 | 人数 |
300 | 24 | 100~149 | 26 |
250~299 | 32 | 50~99 | 18 |
200~249 | 32 | 1~49 | 22 |
150~199 | 20 |
分数线统计:
前10%分数线:300
前20%分数线:260
前30%分数线:260
2.普及奠基组:
参考学员人数:118人
参考学员平均分:159.34分(满分300分)
每题平均分:
普及奠基组每题平均分 | |||
题号 | 第1题 | 第2题 | 第3题 |
题目 | 字符串价值 | 消除因子 | 平方序列 |
平均分 | 73.77 | 66.99 | 19.40 |
分数段人数统计:
普及奠基组分数段人数统计表 | |||
分数段 | 人数 | 分数段 | 人数 |
300 | 5 | 100~149 | 5 |
250~299 | 10 | 50~99 | 21 |
200~249 | 16 | 1~49 | 9 |
150~199 | 52 |
分数线统计:
前10%分数线:257
前20%分数线:207
前30%分数线:191
3.普及进阶组:
参考学员人数:27人
参考学员平均分:55.19分(满分200分)
每题平均分:
普及进阶组每题平均分 | ||
题号 | 第1题 | 第2题 |
题目 | 构造数列 | 六面世界 |
平均分 | 34.81 | 20.37 |
分数段人数统计:
普及进阶组分数段人数统计表 | |||
分数段 | 人数 | 分数段 | 人数 |
200 | 3 | 50~99 | 3 |
150~199 | 0 | 1~49 | 19 |
100~149 | 2 |
分数线统计:
前10%分数线:200
前20%分数线:60
前30%分数线:45
03
第一周周赛视频讲解
1.语言基础组:
3.普及进阶组:

添加 家长论坛微信
全部 0条评论