树状数组及其简单扩展

树状数组及其简单扩展 不对树状数组做详细讲解,只对应用类型做总结. 一维树状数组 单点修改,区间查询 由于树状数组维护的是前缀信息,所以区间查询直接利用前缀特性相减即可. 单点修改只需从开始位置向后更新即可. 区间修改,单点查询 树状数组只支持单点修改,那么如何处理区间修改呢? 考虑常见的区间修改转单点修改的套路:差分. 而差分数组的前 \(n\) 项和也恰好就是真正的 \(v_i\). 所有直接差分去做即可. 区间修改,区间查询 同理,先差分,差分后区间修改是没有区别的. 而这里我们发现,我
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

二叉树算法练习递归类型汇总

递归类型 按照编程技巧分啪 一、将复杂问题分解成两个子问题 1、平衡二叉树(LeetCode题库110题) 自上而下:算每个节点的平衡因子(即左右子树的高度差),判断是否满足条件。 可以分成两个子问题:求树的高度,和遍历树判断每个节点的是否满足条件 class Solution { public boolean isBalanced(TreeNode root) { if(root == null) { return true;
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

人生,还没困难到"非死不可"

最近半个月,美国著名的Facebook公司,出了好几件大事。 第一件事,2019年9月19日,一名陈姓中国软件工程师在Facebook加州总部跳楼自杀。 第二件事,2019年10月4日,一名软件工程师在座位上猝死。 第三件事,2019年10月7日,Facebook开除了一名要求公开陈姓中国软件工程师跳楼自杀事件调查真相的内部员工。 我们一件一件来说。 人生,不是“非死不可” 2019年9月19日的午后,一名中国籍软件工程师从Facebook的加州总部某栋办公楼4楼跳下,结束了自己38岁的生命。
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

VC++透明位图的显示 透明位图的显示

透明位图的显示
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

防火墙TCP的单向控制

网络拓扑: 如上图所示,防火墙分为external/internal/dmz三个安全zone,其中10.133.1.100/32为dmz区的一台squid缓存服务器,10.158.1.10/32,10.158.1.20/32为两台internal内部的web服务器,在防火墙的external口上将10.133.1.100/32的80端口映射给10.10.1.50/32,则外部的客户端就可以通过10.10.1.50/32的80端口访问业务了。 策略配置如下图: 如上图,DMZ区的10.133.1
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

【CSP-S膜你考】即时战略

Problem B. 即时战略 (rts.c/cpp/pas) 注意 Input file: rts.in Output file: rts.out Time Limit : 2 seconds Memory Limit: 512 megabytes 题面 $\text{HLY}$在玩一个即时战略$\text{(Real Time Strategy)}$游戏。与大多数同类游戏类似,这个游戏的地图是平面的,并且玩家都有一个基地。 $\text{HLY}$的对手杰哥的基地是一个$w \times
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

洛谷p2827蚯蚓题解

题目 算法标签里的算法什么的都不会啊 什么二叉堆?? qbxt出去学习的时候讲的,一段时间之前做的,现在才写到博客上的 维护3个队列,队列1表示最开始的蚯蚓,队列2表示每一次被切的蚯蚓被分开的较长的那一部分,队列3表示每一次被切的蚯蚓被分开的较短的那一部分。 我们先把原序列排序,因为不管怎么切,先被切的蚯蚓分成的两部分一定比后切的蚯蚓分成的两部分大 寻找每次切哪一只蚯蚓就是在队列1、队列2、队列3的队头找一个算上增加的长度最大的蚯蚓,之后把他出队,切开的两部分分别进入队2、队3。 最后合并输出
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

[HNOI2007]分裂游戏 SG打表博弈

结论:其实每一个巧克力都是一堆石子 它的石子数就是它到队尾的距离 打一个SG表即可 #include<bits/stdc++.h> using namespace std; typedef long long ll; int sg[30]; int num[30]; bool vis[1005]; int main() { sg[0] = 0; for (int i = 1; i <= 25; i++) { me
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

20191323《信息安全系统设计基础》第二周学习总结

本周学习了《计算机科学导论》第一章与第十八章的内容,并完成了老师布置的课后110题。 第一章中我了解到了硬件和软件的历史,以及计算机系统的结构。书中计算机系统的结构被比作为洋葱,最内层为信息,向外依次是硬件,程序设计,操作系统,应用程序,通信。第一章只是着重介绍了最内层,之后的几章会依次介绍其他的内容。了解了软件的不断革新与升级,从汇编语言到互联网的普及,是对之前认识的刷新。 第十八章介绍了计算的限制,对精度,误差概念有了更科学的了解,了解了化零误差与表示误差的区别,软件制作及测试工作量大,避
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

分不清npm cnpm npx nvm ?

npm npm 的全称是 Node Package Manager 是 JavaScript 世界的包管理工具,并且是 Node.js 平台的默认包管理工具,在安装的 nodejs 的时候,npm 会跟着一起安装。通过 npm 可以安装、共享、分发代码,管理项目依赖关系。 常用命令: ``` npm -v 显示版本,检查npm 是否正确安装 npm help 可查看某条命令的详细帮助,例如npm help install npm list -g 查看已经安装的模块 npm show expre
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

golang数据结构和算法之BinarySearch二分查找法

基础语法差不多了, 就需要系统的撸一下数据结构和算法了。 没找到合适的书, 就参考github项目: https://github.com/floyernick/Data-Structures-and-Algorithms/ 注意golang里没有main函数,不能执行, 测试时,使用go test即可。 BinarySearch.go package BinarySearch //二分法查找 func BinarySearch(array []int, number int) int
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

Python基础滚固(一) 小整数池 与 大整数池

通过2周时间的学习,Python基础已经学完了。对于我这样年纪略大的人,而且又是零基础的人来说,计算机编程语言中Python是很适合我这类人通过业务时间去学习的。 温故而知新,虽然学完了基础知识,但是总感觉很多细枝末节的知识点掌握得还不是很牢固,所以重新再学一遍,把一些自学中忽略的,还不是很牢固的知识点梳理记录,以便今后参考。 发现的问题: 1 a = 1000 2 b = 1000 3 4 a == b #判断变量a b 的值是否相等 5 >>True 6 a is
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

github fork 后同步源仓库的新提交

很多人都fork过,此时若是源仓库(你fork的那个仓库)有了新的提交,此时如何把新的提交也同步的fork过来? 这里有github的原文,可以直接看。也可以往下看 [Syncing a fork]: https://help.github.com/en/articles/syncing-a-fork 注:先把fork的仓库clone到你本地。下面的都是基于本地仓库操作的! 查看你的本地仓库的远程仓库配置 $ git remote -v > origin https://github.com
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

SAP 接口测试实战 Web Services , REST JSON, ODATA

SAP 接口测试 Web Services , REST JSON, ODATA 实际项目中经常要调用其它系统的接口,常用的有Web Services , REST JSON, ODATA等。 如何简单直接的确定SAP系统是不是能成功调用呢? 辛苦把代码写出来,结果发现调不通,或者各种报错。 折腾多次还是没有成功,要不要双方互相扯皮,或者PK? 到底是对方接口有问题还是自己写的代码有问题,甚至是SAP根本不能调用? 调用失败到底是什么原因?各种猜测,找不到北... ... WebXml.com
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

Python基础滚固(一)之 小整数池 与 大整数池

通过2周时间的学习,Python基础已经学完了。对于我这样年纪略大的人,而且又是零基础的人来说,计算机编程语言中Python是很适合我这类人通过业务时间去学习的。 温故而知新,虽然学完了基础知识,但是总感觉很多细枝末节的知识点掌握得还不是很牢固,所以重新再学一遍,把一些自学中忽略的,还不是很牢固的知识点梳理记录,以便今后参考。 发现的问题: 1 a = 1000 2 b = 1000 3 4 a == b #判断变量a b 的值是否相等 5 >>True 6 a is
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

【刷题】【LCA】紧急集合/聚会

给你一棵树,求三个点到哪个点的距离和最近,且求出距离 挺好证的,是三个LCA中矮的那个, 但是这题需要卡常技巧,QAQ 以后还是要养成加上卡常技巧的习惯,20分啊 #include<cstdio> #include<cstdlib> #include<vector> using namespace std; int n,m; const int N=500003; int tot,head[N]; struct node { int v,nx; }e[N<<1];
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

python自定义线程池

关于python的多线程,由与GIL的存在被广大群主所诟病,说python的多线程不是真正的多线程。但多线程处理IO密集的任务效率还是可以杠杠的。 我实现的这个线程池其实是根据银角的思路来实现的。 主要思路:   任务获取和执行:   1、任务加入队列,等待线程来获取并执行。   2、按需生成线程,每个线程循环取任务。   线程销毁:   1、获取任务是终止符时,线程停止。   2、线程池close()时,向任务队列加入和已生成线程等量的终止符。   3、线程池terminate()时,设置线
分类: 其他 发布时间: 10-13 21:47 阅读次数: 0

编程题:利用链表实现栈

class Node<E>{ E data; Node<E> next = null; public Node(E data){ this.data = data; } } class ListStack<E>{ Node<E> top = null; public boolean empty(){ return top == null; } //头插法插入新节点,实
分类: 其他 发布时间: 10-13 21:31 阅读次数: 0

有关自有属性,原型属性的问题

首先说一下, Object.create()创造出来的 Object.create({pname:'plishishi'},{ name:{   value:'lishishi' } }) 现在看到的第一个参数里面的对象就是__proto__里面的属性 除了这种写法还可以写成Object.create(Object.prototype,{ name:{   value:'lishishi' } }) 下面再说下for in,for in 是只能遍历可枚举的 再讲下Object.keys(),只
分类: 其他 发布时间: 10-13 21:31 阅读次数: 0

Java 三目运算符

1 public class Test { 2 public static void main(String args[]){ 3 int a , b; 4 a = 10; 5 6 b = (a == 1) ? 20 : 30; 7 // 如果a等于1那么b就等于20,否则等于30 8 9 System.out.println( "Value of b is : " +
分类: 其他 发布时间: 10-13 21:31 阅读次数: 0