- 博客(103)
- 收藏
- 关注
原创 python/c++ Leetcode题解——292. Nim 游戏
让我们考虑一些小例子。显而易见的是,如果石头堆中只有一块、两块、或是三块石头,那么在你的回合,你就可以把全部石子拿走,从而在游戏中取胜;如果堆中恰好有四块石头,你就会失败。因为在这种情况下不管你取走多少石头,总会为你的对手留下几块,他可以将剩余的石头全部取完,从而他可以在游戏中打败你。因此,要想获胜,在你的回合中,必须避免石头堆中的石子数为 4 的情况。我们继续推理,假设当前堆里只剩下五块、六块、或是七块石头,你可以控制自己拿取的石头数,总是恰好给你的对手留下四块石头,使他输掉这场比赛。
2024-02-04 14:20:46 262 1
原创 python/c++ Leetcode题解——118. 杨辉三角
杨辉三角,是二项式系数在三角形中的一种几何排列。它是中国古代数学的杰出研究成果之一,它把二项式系数图形化,把组合数内在的一些代数性质直观地从图形中体现出来,是一种离散型的数与形的结合。杨辉三角具有以下性质:1.每行数字左右对称,由 1 开始逐渐变大再变小,并最终回到 1。2.第 n 行(从 0 开始编号)的数字有 n+1 项,前 n 行共有个数。3.第 n 行的第 m 个数(从 0 开始编号)可表示为可以被表示为组合数,记作或,即为从 n 个不同元素中取 \m 个元素的组合数。
2024-01-17 19:51:22 294 2
原创 python/c++ Leetcode题解——2744. 最大字符串配对数目
我们可以直接使用二重循环,枚举给定的数组 words 中的 words[i] 和 words[j] 是否可以匹配。由于题目规定了数组 words 中包含的字符串互不相同,因此在枚举时,只要保证 i
2024-01-17 19:40:50 218 1
原创 python/c++ Leetcode题解——20. 有效的括号
如果不是相同的类型,或者栈中并没有左括号,那么字符串 s 无效,返回 false。栈中的字符数量为 O(n),而哈希表使用的空间为 O(∣Σ∣),相加即可得到总空间复杂度。我们遍历给定的字符串 s。当我们遇到一个左括号时,我们会期望在后续的遍历中,有一个相同类型的右括号将其闭合。注意到有效字符串的长度一定为偶数,因此如果字符串的长度为奇数,我们可以直接返回 false,省去后续的遍历判断过程。在遍历结束后,如果栈中没有左括号,说明我们将字符串 s 中的所有左括号闭合,返回 true,否则返回 false。
2024-01-16 18:43:58 79
原创 python/c++ Leetcode题解——746. 使用最小花费爬楼梯
假设数组 cost 的长度为 n,则 n 个阶梯分别对应下标 0 到 n−1,楼层顶部对应下标 n,问题等价于计算达到下标 n 的最小花费。可以通过动态规划求解。创建长度为 n+1 的数组 dp,其中 dp[i] 表示达到下标 i 的最小花费。由于可以选择下标 0 或 1 作为初始阶梯,因此有 dp[0] = dp[1] = 0.当 2 ≤ i ≤。
2023-12-17 12:10:02 176
原创 python/c++ Leetcode题解——1.两数之和
最容易想到的方法是枚举数组中的每一个数 x,寻找数组中是否存在 target - x。当我们使用遍历整个数组的方式寻找 target - x 时,需要注意到每一个位于 x 之前的元素都已经和 x 匹配过,因此不需要再进行匹配。而每一个元素不能被使用两次,所以我们只需要在 x 后面的元素中寻找 target - x。
2023-12-17 11:38:06 104
原创 P1029 [NOIP2001 普及组] 最大公约数和最小公倍数问题
【代码】P1029 [NOIP2001 普及组] 最大公约数和最小公倍数问题。
2023-11-12 20:32:17 86
原创 windows/mac/linux 用C++搭建一个刷题模拟器
欢迎大家提供新题目(请把题目文件夹压缩成zip后发给我chengyixuan130812@163.com),我会定期更新的。
2023-10-25 17:37:49 564
原创 P1093 [NOIP2007 普及组] 奖学金
先按总分从高到低排序,如果两个同学总分相同,再按语文成绩从高到低排序,如果两个同学总分和语文成绩都相同,那么规定学号小的同学 排在前面,这样,每个学生的排序是唯一确定的。任务:先根据输入的 3 门课的成绩计算总分,然后按上述规则排序,最后按排名顺序输出前五名名学生的学号和总分。第 j 行的 33 个数字依次表示学号为 j−1 的学生的语文、数学、英语的成绩。这两名同学的总分都是 279 (总分等于输入的语文、数学、英语三科成绩之和) ,但学号为 7 的学生语文成绩更高一些。所给的数据都是正确的,不必检验。
2023-10-07 21:24:02 306
原创 P1062 [NOIP2006 普及组] 数列
给定一个正整数 k(3≤k≤15),把所有 k 的方幂及所有有限个互不相等的 k 的方幂之和构成一个递增的序列,例如,当 k=3 时,这个序列是:(该序列实际上就是:30,31,30+31,32,30+32,31+32,30+31+32,…30,31,30+31,32,30+32,31+32,30+31+32,…)请你求出这个序列的第 N 项的值,用 10 进制数表示。例如,对于 k=3,N=100,正确答案应该是 981。
2023-10-07 21:20:28 500
原创 C++ 运算符
运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。本章将逐一介绍算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符和其他运算符。
2023-09-10 12:03:59 333 2
mac/linux C++ 控制台工具
2023-09-22
C++重构vector
2023-06-28
chatgpt应用.docx
2023-06-22
C++重构vector
2023-05-04
C++ 本地网盘模拟器1.0.0(可体验)
2023-02-19
C++重构string(.cpp部分)v1.0.0
2022-12-21
C++重构string(.h部分)v1.0.0
2022-12-21
数据范围太大了,怎么做(C++)
2024-04-14
关于#c++#的问题,请各位专家解答!
2023-03-07
Windows怎么改变字体颜色
2022-12-26
帮我看看C++竞赛题
2022-12-25
TA创建的收藏夹 TA关注的收藏夹
TA关注的人