团队训练(七)-- 前缀和基础 前言:感觉遇到一些题可以结合前缀和使用,降低时间复杂度,就找了比较基础的题目来练练,前三题基本就是概念,第四题结合了上次的二分,相对还是比较熟练,第五题加了点数学思维,卡了一下,重点是第五题读题懵逼了,第六题用到差分,知识点全部都见过,这次的题目相对找的比较容易吧。 ...
分类:
其他好文 时间:
2020-06-05 00:43:53
阅读次数:
57
定义 二叉查找树:即BST,也叫二叉搜索树,二叉排序树,在二叉树的基础上,它拥有如下性质,每个节点的值都大于其左子树中的任意节点的值,而小于右子树的任意节点 图例 数据结构 节点数据结构如下 private class Node { private Value value; //该节点的值 priv ...
分类:
其他好文 时间:
2020-06-04 21:19:21
阅读次数:
54
首先开A,发现是GDOI防ak题,随便写个30分就跳过。 再开B,显然图必须是一个二分图,再枚举小的一边的节点数量就是35分。 后来想到了最大权闭合子图,想到了和正解差不多的东西,但是以为是假的没法修所以没写(因为点数要最大)想了很久其他做法(走了歪路)都没想到。 开c已经只剩下1h了,根据一道cf ...
分类:
其他好文 时间:
2020-06-04 14:12:25
阅读次数:
57
1.摘要: 关于LIS部分,本篇博客讲一下LIS的概念定义和理解,以及求LIS的三种方法,分别是O(n^2)的DP,O(nlogn)的二分+贪心法,以及O(nlogn)的树状数组优化的DP,最后附上几道非常经典的LIS的例题及分析。 2.LIS的定义: 最长上升子序列(Longest Increas ...
分类:
其他好文 时间:
2020-06-04 01:48:57
阅读次数:
91
#include<iostream> #include<cstdio> #include<algorithm> #include<queue> #include<iomanip> #include<cstring> using namespace std; typedef long long ll; ...
分类:
其他好文 时间:
2020-06-04 01:12:55
阅读次数:
61
地址:http://poj.org/problem?id=2182 题意: N头奶牛排队,它们的身高为1~n,已知每头牛前面有多少头比自己矮,求每头牛的身高。 解析: 输入其实是从i=2开始的 暴力代码:跑了438M #include<iostream> #include<cstdio> using ...
分类:
编程语言 时间:
2020-06-04 01:02:04
阅读次数:
64
Scanner类 引用类型 导包 import 包路径.类名称 创建 类名称 对象名=new 类名称() 使用 对象名.成员方法名 匿名对象:只有右边的对象,没有左边的名字和赋值运算符。 new 类名称() new Person.name()="赵又廷"; 匿名对象只能使用唯一的一次,下次再用不得不 ...
题目链接 题解 很裸的网络流,加入源点和汇点对二分图求最大匹配,跑最大流就行了 记录方案只需要看对应边的剩余容量是否为0。 查看代码 #include <bits/stdc++.h> using namespace std; typedef long long ll; const int maxn ...
分类:
其他好文 时间:
2020-06-02 19:08:03
阅读次数:
50
一、一般java应用cpu过高基本上是因为 1.程序计算比较密集2.程序死循环3.程序逻请求堵塞4.IO读写太高 二、分析步骤 1. 找到被压服务的进程id(top -d 1) 2. ps -mp pid -o THREAD,tid,time 查看该进程的线程情况,找到耗时最多的线程id,转为16进 ...
分类:
其他好文 时间:
2020-06-02 14:46:13
阅读次数:
59
最新互联网大厂面试真题、Java程序员面试策略(面试前的准备、面试中的技巧)请访问GitHub二分查找(BinarySearch)算法,也叫折半查找算法。二分查找的思想非常简单,很多非计算机专业的同学很容易就能理解,但是看似越简单的东西往往越难掌握好,想要灵活应用就更加困难。先来看看一道思考题。假设我们有1000万个整数数据,每个数据占8个字节,如何设计数据结构和算法,快速判断某个整数是否出现在这
分类:
编程语言 时间:
2020-06-01 20:48:02
阅读次数:
65