- 博客(36)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 潜水员问题(二维背包)——挣扎后的结晶
好吧是我太菜,看着答案想了好久。题目我就ctrl + v过来了啊+_+!潜水员Time Limit:10000MS Memory Limit:65536K Total Submit:104 Accepted:56Case Time Limit:1000MSDescription潜水员为了潜水要使用特殊的装备。他有一个带2种气体的气缸:一个为氧气,一个为氮气。让潜水员下潜的...
2018-09-23 13:31:14
1936
原创 note-of-python
文章目录pycharm环境搭建python软件相关杂项python基础数据类型:整数:浮点数:字符串:布尔值:空值变量常量字典切片(Slice)python多变量赋值函数printlru缓存优化import模块`from xxx import funcName``from ... import *` 把一个模块的所有内容全都导入到当前的命名空间`__name__`属性内置函数dir()sys 模块变量作用域包classmethod正则表达式(regular expression)历史作用正则表达式字符非打印
2021-12-30 16:28:19
824
原创 重拾 char 与 ASCII
引入在leetcode上做的一道题,对其中一个解法有个小坑,可以讨论下面试题 10.02. 变位词组先放代码class Solution {public: vector<vector<string>> groupAnagrams(vector<string>& strs) { map<string, int> mp; vector<vector<string>> ans;
2021-07-22 22:51:26
923
3
原创 二分查找 之初值设置的区别分析
left = 0, r = v. size() - 1, while(l <= r)时void test() { vector<int> v{1, 3, 5, 7, 9, 11, 13, 15, 17}; vector<int> vl, vr, vm; int find_val; //输入要查询的值,看二分搜索下标的情况 while(cin >> find_val) { int l = 0, r = v.size(
2021-07-16 14:44:59
242
原创 报错处理 无法解析的外部命令、heap-buffer-overflow No matching function for call to ‘max‘
报错无法解析的外部命令:往往时在链接时出错,有以下可能:虚函数没有实现写了同一功能的普通函数和函数模板,但普通函数没有实现heap-buffer-overflow数组越界申请的堆空间不足,注意new int[10];是申请10个int空间,new int(10)是申请一个int并初始化为10...
2021-06-20 00:24:31
278
原创 523. 连续的子数组和 同余定理,前缀和,set
523. 连续的子数组和 同余定理,前缀和题目:给你一个下标从 0 开始的二进制字符串 s 和两个整数 minJump 和 maxJump 。一开始,你在下标 0 处,且该位置的值一定为 ‘0’ 。当同时满足如下条件时,你可以从下标 i 移动到下标 j 处:i + minJump <= j <= min(i + maxJump, s.length - 1) 且s[j] == ‘0’.如果你可以到达 s 的下标 s.length - 1 处,请你返回 true ,否则返回 false 。
2021-06-02 13:38:49
211
原创 993.二叉树的堂兄弟结点 之妙不可言的位操作
993. 二叉树的堂兄弟结点题目:在二叉树中,根结点位于深度 0 处,每个深度为 k 的结点的子结点位于深度 k+1 处。如果二叉树的两个结点深度相同,但 父结点不同 ,则它们是一对堂兄弟结点。我们给出了具有唯一值的二叉树的根结点 root ,以及树中两个不同结点的值 x 和 y 。只有与值 x 和 y 对应的结点是堂兄弟结点时,才返回 true 。否则,返回 false。来源:力扣(LeetCode)github题解仓库blog:https://blog.csdn.net/github_3
2021-05-26 09:45:11
194
原创 206.反转链表 递归,原地,栈,队列
206. 反转链表题目:给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。github题解仓库解法一:大致流程就是递归到链表的末尾,然后返回反转后的头结点,在返回的过程中反转,并传递回来这个头结点。抓住reverseList函数返回的是目标链表的头结点这一点思考返回值,思考返回值该用什么接。引入pre参数,原链表中各个结点head和head->next的关系(head是head->next前驱)在目标链表中会是相反的关系。先写的第一版,然后多想一步就成了第二版。
2021-05-26 09:38:18
152
原创 897.递增顺序搜索树 递归思考
897. 递增顺序搜索树题目:给你一棵二叉搜索树,请你 按中序遍历 将其重新排列为一棵递增顺序搜索树,使树中最左边的节点成为树的根节点,并且每个节点没有左子节点,只有一个右子节点。来源:力扣(LeetCode)github题解仓库解法一:思路:函数最终要返回该二叉搜索树最左边的节点,也是以该节点为根节点的递增顺序搜索树,所以设计的递归函数的返回值应该是所给搜索树的最左边的节点ans。中序遍历中引入pos(后继)这个参数可以很方便的处理前后继之间的关系,pos参数表示当前节点在中序遍历中的后继节
2021-05-25 15:44:45
200
原创 7.整数反转
7. 整数反转题目:给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。来源:力扣(LeetCode)题解链接:https://github.com/TrespassingoO/notes-of-algorithm解法一:思路:先处理掉x==-2^31次方的情况(不然去符号时会溢出),取出x的符号,然后将x的绝对值存入字
2021-05-25 15:37:03
80
原创 优秀blog推荐
早期程序员,行文可出书的感觉,一些问题的讨论和见解,今天看来还是颇有收获。于是便有了这篇文章。https://blog.csdn.net/g9yuayon比如:g9对当时有大学生抱怨学校所教的工具已经脱离了工业,我觉得是挺中肯的,大概就是说:工具的迭代很快,学校应该教的是几十年不变的核心知识、设计思想,和对一门学科入门的引导,对于细节和工具的使用,就留着学生自行课下完成,同时学生更应该注重数学、计算机底层原理概念方面的学习,这样出来工作,工具的学习和掌握是很快的,大学四年能打好这些方面的基础就已经不容易
2021-05-09 23:24:33
249
1
原创 算法小本本
碎碎念同一个表达式换一换字母可能会好理解些 INF作为无穷大一般设为10^9(int的最大值约为2*10^9) 考虑结果为0 for(int i = 0; i < n ; i++) sum += r[i]/2;//直接把1去掉求和 for(int i = n; i >= 1; i--) s[i * 2 + 1] = s[i], s[i * 2 + 2] = '#';// 从后往前赋值可以节省一个数组 Stl位操作x<<1|1 ==
2021-03-12 14:55:42
256
原创 PAT 乙 1003 我要通过!
1003 我要通过!“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于 PAT 的“答案正确”大派送 —— 只要读入的字符串满足下列条件,系统就输出“答案正确”,否则输出“答案错误”。得到“答案正确”的条件是:字符串中必须仅有P、A、T这三种字符,不可以包含其它字符; 任意形如xPATx的字符串都可以获得“答案正确”,其中x或者是空字符串,或者是仅由字母A组成的字符串; 如果aPbTc是正确的,那么aPbATca也是正确的,其中a、b、c均或者是空...
2021-03-04 00:36:11
91
1
原创 Dijkstra算法 pat1030 Travel Plan
DescriptionA traveler's map gives the distances between cities along the highways, together with the cost of each highway. Now you are supposed to write a program to help a traveler to decide the shortest path between his/her starting city and the destin
2021-02-22 00:40:59
139
原创 微信小程序巧用wx:if来控制伪元素::after::before的显示
上图中每个block是一个flex布局的容器,容器里可以放三个内容,当内容为null时由于还是有class=“date”的标签存在,就会有多余的显示,于是想到用wx::if来控制这个class='date'的标签,来隐藏对应的::after的显示。(当然,如果直接不存内容也就不会有上面的问题)解决后效果:...
2020-05-20 16:46:39
2237
原创 基于Bmob云开发微信小程序报错:Bmob.Error:{code:415, message:incorrect parameter type.}
第一次用Bomb云,从官方文档上学习给表单中pointer类型的列添加值,遇到坑:问题分析:commentObjectId是异步获取的,因此请求添加失败。对文档方法使用太陌生,完全可以不用objectId来添加内容正确的使用方法:不用再次访问comments表通过objectId来添加pointer类型直接全部赋值。顺便说下文档Bmob云微信小程序(新)开发文档上添加pointer类型那段代码各参数的含义:...
2020-05-17 17:35:41
1326
原创 c itoa函数的递归实现 及static小插曲
测试对静态变量声明及定义疑问同时,给出itoa函数(把整数转换为字符串)的实现。#include<stdio.h>#include<math.h>#define MAXSIZE 100char s[MAXSIZE];void itoa1(int n, char s[])//该程序仅供测试静态声明,无法将负数正确转换 { //起初思想:若为负数,则初次声明后...
2019-08-08 15:56:26
216
原创 查找最接近的元素 分治
L+1<R查找最接近的元素出处:http://ybt.ssoier.cn:8088/problem_show.php?pid=1240Description在一个非降序列中,查找与给定值最接近的元素。Input第一行包含一个整数n,为非降序列长度。1 ≤ n ≤ 100000。第二行包含n个整数,为非降序列各元素。所有元素的大小均在0-1,000,000,000之间...
2019-03-01 01:07:49
1625
原创 oj2011 分治 快速幂 高精度除低精度
2011出处:http://ybt.ssoier.cn:8088/problem_show.php?pid=1234Description已知长度最大为200位的正整数n,请求出2011n的后四位。Input第一行为一个正整数k,代表有k组数据(k≤200),接下来的k行,每行都有一个正整数n,n的位数≤200。Output每一个n的结果为一个整数占一行,若不足4位,去...
2019-02-14 22:40:48
541
1
原创 Crossing river 贪心
DescriptionA group of N people wishes to go across a river with only one boat, which can at most carry two persons. Therefore some sort of shuttle arrangement must be arranged in order to row the bo...
2019-01-30 22:18:30
308
原创 Ride to office 贪心
Description起点与终点相隔4500米。现Charley 需要从起点骑车到终点。但是,他有个习惯,沿途需要有人陪伴,即以相同的速度, 与另外一个人一起骑。而当他遇到以更快的速度骑车的人时,他会以相应的速度跟上这个更快的人。先给定所有与Charley 同路的人各自的速度与出发时间,问Charley 以这种方式跟人,骑完4500米需要多少时间。得出的结果若是小数,则向上取整。Input...
2019-01-30 21:33:15
466
原创 最大子矩阵 贪心
Description已知矩阵的大小定义为矩阵中所有元素的和。给定一个矩阵,你的任务是找到最大的非空(大小至少是1×1)子矩阵。比如,如下4×4的矩阵的最大子矩阵是 0 -2 -7 0 9 2 -6 2 -4 1 -4 1-1 8 0 -2这个子矩阵的大小是 9 2-4 1-1 8这个子矩阵的大小是...
2019-01-30 20:09:31
1098
原创 快速排序(qsort) 代码层分析
快速排序在我看来,他是一种排序思想:(以升序为例)1.取预排序序列中的一个数作为划分值2.从序列中找到两个数——在序列左侧的值大的数,序列右侧的值小的数(值的大小以划分数为标准)3.交换位置4然后再进一步对两边数作1、2、3操作,直至成为目标序列。这1、2、3、4步操作均可以不同的方式来写,来优化。提一下:sort在c++的<algorithm>头文件中,模板:sort(...
2019-01-30 18:53:43
275
原创 日常解题策略思考
这几天刷题的总结。一个问题,先找到一般的解决问题的策略,由于时间和能力的关系,对特殊情况(corner case)及规律的把握不到位,就会导致更大的错误(可能)固化潜在的错误认知,这样会加大回头找漏洞时的难度(从最根本的地方来步步寻错),当然不管想到或者选择哪种,直至纠正的整个过程,对人分析和看待的问题都是有成长价值的。主要是在选择是需考虑时间代价与目标之间的关系,轻重缓急。有时会想如果走...
2019-01-27 22:05:44
140
原创 c++中cin输入与clt+z结束输入相关的问题
算是在编程中遇到的小插曲:由while(cin >> a[t++]);作输入时,用clt+z结束输入时,会在数组末尾多录入一个0,于是在电脑上测试了下(环境window+dev) char c = 'b'; int a, b; cin >> b;//模拟while输入(先是几个正常输入),这里只输入并显示一个值。 cout <<...
2019-01-24 02:02:18
599
原创 拦截导弹 贪心
问题描述:某国为了防御敌国的导弹袭击,开发出一种导弹拦截系统,但是这种拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭,由于该系统还在试用阶段。所以一套系统有可能不能拦截所有的导弹。输入导弹依次飞来的高度(雷达给出的高度不大于30000的正整数)。计算要拦截所有导弹最小需要配备多少套这种导弹拦截系统。输入...
2019-01-23 22:52:38
583
原创 删数问题 贪心
问题描述:输入一个高精度的正整数n,去掉其中任意s个数字后剩下的数字按原左右次序组成一个新的正整数。编程对给定的n和s,寻找一种方案使得剩下的数字组成的新数最小。输出新的正整数。(n不超过240位)输入数据均不需判错。输入:ns输出:最后剩下的最小的数输入样例:1754384输出样例:13掉进自己挖的坑最初的思路是——选数(挖坑开始):由于这里给的是要删除的数的个数,...
2019-01-22 16:44:44
793
原创 排队接水 贪心
问题描述:有n个人在一个水龙头前排队接水,假如每个人接水的时间为Ti,请编程找出这n个人排队的一种顺序,使得n个人的平均等待时间最小。输入:共两行,第一行为n(1≤n≤1000);第二行分别表示第1个人到第n个人每人的接水时间T1,T2,…,Tn,每个数据之间有1个空格。输出:有两行,第一行为一种排队顺序,即1到n的一种排列;第二行为这种排列方案下的平均等待时间(输出结果精确到小...
2019-01-11 01:29:46
889
原创 放苹果问题 搜索解法
把m个同样的苹果放在n个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。样例输入:17 3样例输出:8感觉放苹果问题还是挺有意思的,好几种思想都能解。#include<iostream>using namespace std;int a[1001] = {1};int m, n, tot;v...
2019-01-09 21:32:15
653
原创 letters 搜索与回溯
【题目描述】给出一个roe×colroe×col的大写字母矩阵,一开始的位置为左上角,你可以向上下左右四个方向移动,并且不能移向曾经经过的字母。问最多可以经过几个字母。【输入】第一行,输入字母矩阵行数RR和列数SS,1≤R,S≤201≤R,S≤20。接着输出RR行SS列字母矩阵。 【输出】最多能走过的不同字母的个数。【输入样例】3 6HFDFFBAJ...
2018-11-08 15:36:30
392
原创 分解因数 递归
胡来的题目。【题目描述】给出一个正整数aa,要求分解成若干个正整数的乘积,即a=a1×a2×a3×...×ana=a1×a2×a3×...×an,并且1<a1≤a2≤a3≤...≤an1<a1≤a2≤a3≤...≤an,问这样的分解的种数有多少。注意到a=aa=a也是一种分解。【输入】第1行是测试数据的组数nn,后面跟着nn行输入。每组测试数据占11行,包括一个正整数a...
2018-10-29 17:14:23
12869
9
原创 全排列 递归(非字典序) 深搜(字典序)
全排列问题初探,不含重复元素情况的讨论。糊的题目:【题目描述】给定一个由不同的小写字母组成的字符串,输出这个字符串的所有全排列。我们假设对于小写字母有‘a’ <‘b’ < ... <‘y’<‘z’,而且给定的字符串中的字母已经按照从小到大的顺序排列。 【输入】只有一行,是一个由不同的小写字母组成的字符串,已知字符串的长度在1到6之间。【输出】...
2018-10-29 11:17:15
805
原创 递推 踩方格问题 思路分析
上题有一个方格矩阵,矩阵边界在无穷远处。我们做如下假设:a. 每走一步时,只能从当前方格移动一格,走到某个相邻的方格上;b. 走过的格子立即塌陷无法再走第二次;c. 只能向北、东、西三个方向走;请问:如果允许在方格矩阵上走n步,共有多少种不同的方案。2种走法只要有一步不一样,即被认为是不同的方案。输入:允许在方格上行走的步数n(n <=20)输出:计算出方案的数量...
2018-10-20 17:53:01
1743
1
原创 c/c++ 一条语句中包含多个i++时程序的运行情况
今天复习高精度时,遇到了个小坑,于是试验了下。#include<iostream>using namespace std;int main() { int i = 1; int a[8] = {0, 1, 2, 3, 4, 5, 6, 7};//别忘从a[0]开始存数。// a[++i] += 2; //# 1运行结果 i = 2 ...
2018-09-23 12:14:38
1287
原创 On my way thinking
第一篇博客,非技术篇,这是初心,是我思维探索道路的新的启航点。 作为一名程序员,或者说一个学者,我们在学习知识的同时,就应该不断地思考。通过思考去了解,去探索,去以新的角度认识事物。做一个勤于思考,善于思考的人。这就是我想要的样子。 那为什么要以博客的形式来思考呢?其实不管是什么形式,只要是记录下来就好,带着文本字迹去跟踪思维的轨迹,也算是一种享受吧。就像一般人脑短期记忆为7...
2018-09-10 15:06:19
127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人