C++
文章平均质量分 52
zhuzizhuzhu
这个作者很懒,什么都没留下…
展开
-
leetcode 88. 合并两个有序数组(逆向双指针)
leetcode 88. 合并两个有序数组题目:给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。原创 2021-10-19 20:44:32 · 140 阅读 · 0 评论 -
leetcode 35. 搜索插入位置
leetcode 35. 搜索插入位置题目:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例 2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4示例 4:输入:原创 2021-10-14 22:23:48 · 85 阅读 · 0 评论 -
leetcode 11. 盛最多水的容器(双指针)
leetcode 11. 盛最多水的容器(双指针)题目:给你 n 个非负整数 a1,a2,…,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 说明:你不能倾斜容器。输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的原创 2021-10-13 20:45:46 · 89 阅读 · 0 评论 -
leetcode 665. 非递减数列
leetcode 665. 非递减数列题目:给你一个长度为 n 的整数数组,请你判断在 最多 改变 1 个元素的情况下,该数组能否变成一个非递减数列。我们是这样定义一个非递减数列的: 对于数组中任意的 i (0 <= i <= n-2),总满足 nums[i] <= nums[i + 1]。示例 1:输入: nums = [4,2,3]输出: true解释: 你可以通过把第一个4变成1来使得它成为一个非递减数列。示例 2:输入: nums = [4,2,1]输出: fa原创 2021-10-12 20:28:45 · 75 阅读 · 0 评论 -
vector用法
vector一、向量的介绍向量 vector 是一种对象实体, 能够容纳许多其他类型相同的元素, 因此又被称为容器。 与string相同, vector 同属于STL(Standard Template Library, 标准模板库)中的一种自定义的数据类型, 可以广义上认为是数组的增强版。在使用它时, 需要包含头文件 vector, #includevector 容器与数组相比其优点在于它能够根据需要随时自动调整自身的大小以便容下所要放入的元素。此外, vector 也提供了许多的方法来对自身进行转载 2021-10-12 20:07:17 · 447 阅读 · 0 评论 -
leetcode 135分发糖果(贪心算法)
leetcode 135分发糖果(贪心算法)题目:老师想给孩子们分发糖果,有 N 个孩子站成了一条直线,老师会根据每个孩子的表现,预先给他们评分。 你需要按照以下要求,帮助老师给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。 评分更高的孩子必须比他两侧的邻位孩子获得更多的糖果。 那么这样下来,老师至少需要准备多少颗糖果呢?思路:最开始的错误思路:每个孩子初始糖果记为1,在得分里找到分数最小的孩子,记录下标min,从min开始,往前遍历到0,如果当前坐标i 孩子的得分比下一个坐标i+1 孩原创 2021-10-11 21:22:03 · 68 阅读 · 0 评论 -
蓝桥杯 阶乘计算
题目描述:输入一个正整数n,输出n!的值。其中n!=123*…*n。算法描述:n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。将a乘以一个整数k变为将数组A的每一个元素都乘以k,请注意处理相应的进位。首先将a设为1,然后乘2,乘3,当乘到n时,即得到了n!的值输入:输入包含一个正整数n,n< =1000。输出:输出n!的准确值。样例输入:10样例输出:3628800原创 2021-01-24 17:05:37 · 45 阅读 · 0 评论 -
PAT1002(暴力破解)
PAT1002题目:读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10的100次方输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789输出样例:yi san wu我的代码如下:#includeusing namespace std;int mai原创 2021-01-03 16:31:13 · 215 阅读 · 1 评论 -
第十届C/C++ B组蓝桥杯省赛真题
代码:int main(){ long long x1=1; long long x2=1; long long x3=1; long long x=0; for(int i=4;i<=20190324;i++) { x=(x1+x2+x3)%10000; x1=x2%10000; x2=x3%10000; x3=x; } cout<<x; return 0;}答案:4659代码:#include<iostream> .原创 2021-01-23 19:09:44 · 100 阅读 · 0 评论 -
第十一届蓝桥杯大赛软件类省赛第二场C/C++大学B组
试题 A: 门牌制作本题总分:5 分【问题描述】小蓝要为一条街的住户制作门牌号。这条街一共有 2020 位住户,门牌号从 1 到 2020 编号。小蓝制作门牌的方法是先制作 0 到 9 这几个数字字符,最后根据需要将字符粘贴到门牌上,例如门牌 1017 需要依次粘贴字符 1、0、1、7,即需要 1 个字符 0,2 个字符 1,1 个字符 7。请问要制作所有的 1 到 2020 号门牌,总共需要多少个字符 2?代码:#include<iostream>using namesp转载 2021-01-23 19:19:38 · 169 阅读 · 0 评论