笔试强训Day48
文章平均质量分 88
记录算法笔试强训48天
循环渐进Forward
学习编程第一步
展开
-
【C++笔试强训】如何成为算法糕手Day4
学习编程就得循环渐进,扎实基础,勿在浮沙筑高台。原创 2024-09-25 23:56:53 · 916 阅读 · 0 评论 -
【C++笔试强训】如何成为算法糕手Day6
学习编程就得循环渐进,扎实基础,勿在浮沙筑高台。原创 2024-09-28 14:00:32 · 832 阅读 · 0 评论 -
【C++笔试强训】如何成为算法糕手Day5
这是一道简单的模拟题,我们要找出三个字符(y、o、u)中最少的那个字符的数量,这个数量n表示最多能组成多少个"you"。然后,我们计算o字符的总数减去n,得到剩余的o字符数量。如果剩余的o字符少于2个,那么就不需要进一步操作。如果剩余的o字符数量是2个或更多,我们可以在结果上加1(对于2个o),加2(对于3个o),以此类推。最终的结果是n加上剩余o字符数量减去1。原创 2024-09-26 23:28:48 · 715 阅读 · 0 评论 -
【C++笔试强训】如何成为算法糕手Day1
已知不相同的数不超过10000个,现在需要统计这些自然数各自出现的次数,并按照自然数从小到大的顺序输出统计结果。如果两个数组的当前元素不相等,那么我们比较这两个元素的大小。将较小元素所在数组的索引向前移动一位,因为在已排序的数组中,如果较小数组中存在与较大元素相等的元素,它必然位于当前较小元素之后。输出m行(m为n个自然数中不相同数的个数),按照自然数从小到大的顺序输出。的最后一个元素与当前相等的元素不一致,我们就将这个相等的元素添加到。的数组,该数组用于存储两个数组共有的交集元素。对应位置的值是否为1。原创 2024-09-23 01:12:11 · 1077 阅读 · 0 评论 -
【C++笔试强训】如何成为算法糕手Day3
。思路:本题有两种解法,一是暴力循环解法,但是时间复杂度会爆炸因此不建议用。二是滑动窗口法。我使用滑动窗口(同向双指针)法解本题。 首先分为四个步骤,一进窗口,二判断值是否满足,三更新结果,四出窗口。一:设置right右指针先进行移动,配合left左指针进行窗口判断。二:利用sum数组判断数组内数值是否超过n。三:当left+right长度小于retlen长度时更新结果四:sum-=left出窗口原创 2024-09-25 00:47:32 · 584 阅读 · 0 评论 -
【C++笔试强训】如何成为算法糕手Day2
这个值是一个十六进制数,转换为十进制后大约是 1061109567,这个值比 int 类型(通常是32位)能表示的最大值(INT_MAX,通常为 2147483647)要小,但足够大,可以用作一个初始的“无穷大”值,在后续的比较中被实际的最小值替换。然而,在大多数情况下,直接使用 INT_MAX(或 std::numeric_limits::max(),如果你想要更明确的类型依赖)是更安全、更清晰的选择。找到字符串2,此时计算的距离是最小的,因为后续的字符串2距离。,表示尚未找到字符串1和字符串2。原创 2024-09-24 12:33:57 · 1069 阅读 · 0 评论