自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 【基础算法】

双指针-位运算-离散化

2022-09-12 23:15:41 151 1

原创 【基础算法】

前缀和与差分

2022-09-06 21:54:16 147

原创 【基础算法】

二分

2022-09-06 17:06:44 134

原创 【基础算法】

快速排序与归并排序

2022-09-06 16:39:51 103

原创 三角形最小路径和

题目 :三角形最小路径和

2022-06-05 22:36:02 125

原创 leetcode打卡第三天

给你一个字符串 s ,如果 s 是一个 好 字符串,请你返回 true ,否则请返回 false 。如果 s 中出现过的 所有 字符的出现次数 相同 ,那么我们称字符串 s 是 好 字符串。链接:1941. 检查是否所有字符出现次数相同解题思路:第一种:使用vector记录class Solution {public: bool areOccurrencesEqual(string s) { vector<int> a(26,0); for(in

2022-01-16 14:39:15 210

原创 dfs-第一天

回溯算法第一题:组合问题链接:递归实现指数枚举解题思路:dfs:保存状态可以选择数组或者选择二进制#include<iostream>using namespace std;int n;int a[16];int b[16];void dfs(int x,int y,int z){ //当a数组中的数满足每次I的个数,也是一种情况需要输出 if(x==z){ //循环输出A数组中保存的数 for(int i=0;i<x

2022-01-13 14:54:00 90

原创 leetcode打卡第二天

给你一个整数数组 nums 。数组中唯一元素是那些只出现恰好一次的元素,请你返回 nums 中唯一元素的和。链接:唯一的元素和解题思路:map保存第一种方法:class Solution {public: int sumOfUnique(vector<int>& nums) { unordered_map<int,int>cnt; int s=0; for(int i=0;i<nums.size();i++)

2022-01-03 16:17:18 2729

原创 leetcode打卡第一天

题目一:链接:1995.统计特殊四元组解题思路:暴露破解一:class Solution {public: int countQuadruplets(vector<int>& nums) { int n= nums.size(); int s=0; for(int i=0;i<n;i++){ for(int j=i+1;j<n;j++) for(int k

2022-01-02 17:46:59 3677

原创 《九日集训》打卡第九天——递归

题目一:链接:阶乘后零的个数解题思路:简单递归:1! =1 =>02 =2*1=2 =>03! =3*2*1=6 =>04! =4*3*2*1=24 =>05! =5*4*3*2*1=120 =>1....10! =5*2*9*8*7*6*5*4*3*2=3628800 =>220!=5*4*19*18*17*16*5*3*14*13*12*11*5*2*9*8*7*6*5*4*3*

2021-12-19 18:59:00 721

原创 《九日集训》打卡第八日

题目一:链接:翻转题目解题思路:行翻转值翻转C++:class Solution {public: vector<vector<int>> flipAndInvertImage(vector<vector<int>>& image) { //行翻转 for(int i = 0;i<image.size();i++){ reverse(image[i].begin(),i

2021-12-17 22:13:41 161

原创 《九日集训》打卡第七天

题目一:链接:统计举证负数解题思路:暴力C++:class Solution {public: int countNegatives(vector<vector<int>>& grid) { int s=0; for(int i=0;i<grid.size();i++){ for(int j=0;j<grid[i].size();j++){ if(grid[

2021-12-16 19:49:07 426

原创 《九日集训》第六天打卡_贪心

题目一:链接:最大乘积解题思路:排序+贪心C++:class Solution {public: int maxProductDifference(vector<int>& nums) { sort(nums.begin(),nums.end()); return nums[nums.size()-1]*nums[nums.size()-2]-(nums[0]*nums[1]); }};题目二:链接:数组拆分解题思路:

2021-12-15 15:54:33 891

原创 《九日集训》第五天打卡

题目一:链接:排序数组解题思路:采用C语言库里面的qsort(对象,大小,类型大小,排序函数)排序函数 返回小于0,升序;排序函数 返回大于0,降序。C语言:int cmp(const void*a,const void *b){ return *(int *)a - *(int *)b;}int* sortArray(int* nums, int numsSize, int* returnSize){ qsort(nums,numsSize,sizeof(int),cmp

2021-12-14 22:41:35 839

原创 《九日集训》第四天打卡

题目一:链接:重新排列数组解题思路:下标对称,一 一入座JAVA:class Solution { public int[] shuffle(int[] nums, int n) { int [] data=new int[nums.length]; int k=0; for(int i=0;i<n;i++){ data[k]=nums[i]; k++; data[

2021-12-13 16:42:47 1210

原创 《九日集训》第三天打卡

题目一:链接:搜索旋转排序数组target数下标解题思路:1、暴力破解C++:class Solution {public: int search(vector<int>& nums, int target) { for(int i=0;i<nums.size();i++){ if(target==nums[i]){ return i; } } return

2021-12-12 20:15:47 376

原创 《九日集训》打卡第二天

题目一:链接:累加解题思路:1、可以使用循环进行累加求和;2、可以用python中的list求和C++:class Solution {public: int sumNums(int n) { return ((1+n)*n)/2; }};Python:class Solution(object): def sumNums(self, n): """ :type n: int :rtype:

2021-12-11 20:01:11 1023

原创 《九日集训》打卡第一日

题目一:链接:两整数之和解题思路:例如 1 +2 =3 => (0001)B ^ (0010)B=(0011)BBut 1+3=4 => (0001)B ^ (0011)B=(0010)B=2 !=4不成立So 由上可以看出’^‘异或 是不会进位的加法,’&'按位与则 可以记录进位的位数。C++:class Solution {public: int getSum(int a, int b) { unsigned int x

2021-12-10 19:36:56 809

原创 贪心算法-蓝桥杯初赛

题目描述:输入:输出:样例输入:5jmcodinglqhellostoorz样例输出:867题目分析:1、通过题目分析 这个题目是求价值的最大值,使用贪心算法,而价值=单词首字母x单词长度x排列的ID号2、然而我们已经知道单词的字母和长度是固定的了,主要的是这个ID,那么我们可以把字母和长度的乘积按照从小到大排序,是最大的值ID最大,那么最后的价值就一定会是最大。代码如下:#include<algorithm>#include<iostream&gt

2020-08-09 22:31:25 217

原创 贪心算法-初赛

题目描述:输入:样例:3 3 2200 10 399300 8 499400 12 499输出31977数据范围:题目分析:从题目分析这个题目属于贪心,因为他说在满足n天的要求,花费最少。然后题目的要求是可以在任意天采购任意柠檬,养乐多,那我们就可以每次使用柠檬,和养乐多最少的钱,除了第一天,因为你必须要满足他一天的数量。代码如下:#include<iostream>#include<algorithm>using namespace std;

2020-08-09 00:35:41 173

原创 dfs-皇后

题目 1460: [蓝桥杯][基础练习VIP]2n皇后问题题目描述给定一个n*n的棋盘,棋盘中有一些位置不能放皇后。现在要向棋盘中放入n个黑皇后和n个白皇后,使任意的两个黑皇后都不在同一行、同一列或同一条对角线上,任意的两个白皇后都不在同一行、同一列或同一条对角线上。问总共有多少种放法?n小于等于8。输入输入的第一行为一个整数n,表示棋盘的大小。接下来n行,每行n个0或1的整数,如果一个整数为1,表示对应的位置可以放皇后,如果一个整数为0,表示对应的位置不可以放皇后。输出输出一个整数,表示总共

2020-07-31 16:26:04 158

原创 dfs-剪格子

题目 1432: [蓝桥杯][2013年第四届真题]剪格子题目:历届试题 剪格子时间限制:1.0s 内存限制:256.0MB问题描述如下图所示,3 x 3 的格子中填写了一些整数。±-–±-+|10 1|52|±-***–+|20|30 1|*******–+| 1| 2| 3|±-±-±-+我们沿着图中的星号线剪开,得到两个部分,每个部分的数字和都是60。本题的要求就是请你编程判定:对给定的m x n 的格子中的整数,是否可以分割为两个部分,使得

2020-07-25 10:35:18 131

转载 bfs-九宫格

题目 1426: [蓝桥杯][历届试题]九宫重排题目描述:如下面第一个图的九宫格中,放着 1~8 的数字卡片,还有一个格子空着。与空格子相邻的格子中的卡片可以移动到空格中。经过若干次移动,可以形成第二个图所示的局面。我们把第一个图的局面记为:12345678.把第二个图的局面记为:123.46758显然是按从上到下,从左到右的顺序记录数字,空格记为句点。本题目的任务是已知九宫的初态和终态,求最少经过多少步的移动可以到达。如果无论多少步都无法到达,则输出-1。样例输入:12345678.

2020-07-22 14:36:34 375 1

原创 贪心算法-蓝桥杯

题目 1255: [蓝桥杯]能量项链,在Mars星球上,每个Mars人都随身佩带着一串能量项链。在项链上有 N颗能量珠。能量珠是一颗有头标记与尾标记的珠子,这些标记对应着某个正整数。并且,对于相邻的两颗珠子,前一颗珠子的尾标记一定等于后一颗珠子的头标 记。因为只有这样,通过吸盘(吸盘是Mars人吸收能量的一种器官)的作用,这两颗珠子才能聚合成一颗珠子,同时释放出可以被吸盘吸收的能量。如果前一颗 能量珠的头标记为m,尾标记为r,后一颗能量珠的头标记为r,尾标记为n,则聚合后释放的能量为mrn(Mars单位)

2020-07-21 14:17:51 455

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除