ICode9

精准搜索请尝试: 精确搜索
  • CF1103C Johnny Solving 题解2022-05-30 11:34:58

    首先考虑建出 dfs 树,如果一个点的深度 \(\geq \frac{n}{k}\),那么直接输出这个点到根的路径即可。 如果没有点深度 \(\geq \frac{n}{k}\),可以证明这棵树一定有不少于 \(k\) 个叶子(考虑反证法,如果叶子个数少于 \(k\),那么点数最多也不到 \(k\cdot \frac{n}{k}=n\) 不可能)。由于每个点

  • LCA学习笔记2022-05-28 16:35:43

    目录 前言 LCA简介 倍增求LCA 树剖求LCA LCA在树形结构题中的妙用 1.前言 应老师要求,来写一篇关于LCA的学习笔记 2.LCA简介 两个节点的最近公共祖先,就是这两个点的公共祖先里面,离根最远的那个。 画张图理解一下: 如图,10与8的LCA是2,13与3的LCA是3 那么怎么求LCA呢? 3.倍增求LCA 想

  • 324 最近公共祖先 倍增算法2022-05-28 13:32:02

    视频链接: // P3379 【模板】最近公共祖先(LCA) #include <iostream> #include <cstring> #include <algorithm> #include <vector> using namespace std; const int N=5e5+10; int n,m,s,a,b; vector<int> e[N]; int dep[N],fa[N][20]; void dfs(int u, i

  • 洛谷P2168 [NOI2015] 荷马史诗 (哈夫曼树)2022-05-27 22:00:59

    学了哈夫曼树这道题还是好想的,基本上和构造哈夫曼树的思路一样,但是题目要求最长si的最小值,所以用两个关键字的堆,第一关键字是把出现次数作为权值,第二关键字表示从该节点开始的最长长度,权值相同时,选择长度较小的合并。 1 #include<bits/stdc++.h> 2 using namespace std; 3 #de

  • 题解-AHOI2022 钥匙2022-05-20 19:03:35

    通过这道题发现我是春春的滴嫩儿。 前两题一共花了我4.5h,也就是说我要去AH的话切完前两题比赛就结束了后面的题看都没得看。 还是要加强码力和熟练度啊。 首先考虑对每种颜色分别求解,那么我们可以把钥匙和宝箱看成一个括号匹配(怎么又是它),考虑在匹配的位置记入答案。那么可以枚举

  • 3-数据库基本dml操作2022-05-20 18:01:46

    一.where过滤条件 1.select name,salary from emp where name like "____"; select name,salary from emp where char_length(name) = 4; 2.select * from emp where id  not between 3 and 6; 3.select * from emp where salary not in (20000,18000,30000); 4.select n

  • P6684 [BalticOI 2020 Day1] 小丑 题解2022-05-19 09:00:38

    不难发现对于一个特定的 \(\text{l}\) 而言,\(\text{r}\) 的答案具有单调性。 所以就可以很自然的想到二分。 由于需要对所有的 \(\text{l}\) 都进行统计答案。 只用普通的二分复杂度会炸掉,所以就可以想到使用整体二分。 思路 首先考虑如何判断奇环。 对于这部分内容,可以考虑一边加

  • 严格次小生成树 模板 P41802022-05-18 16:32:02

    注意严格次小这个细节问题 #include <bits/stdc++.h> using namespace std; typedef long long ll; const ll INF = 0x3f3f3f3f3f3f3f3f; const int N = 1e5 + 10; const int M = 3e5 + 10; int n,m,head[N],tot,nxt[M],to[M],f[N]; ll w[M]; struct node { int u,v; ll ew;

  • 模拟32022-05-15 18:04:33

    C. SSY的队列 - 高一普及组模拟赛3 - 比赛 - 衡中OI (hszxoj.com) 方法:状态压缩+hash+dfs+记忆化 思路: 首先想到容斥原理,用所有的方案减去一个相同挨着的+两个相同挨着的,但是去重太麻烦,而且各个方案之间相互牵连,不方便实现那么再仔细看题,可不可以对问题进行简化?相邻的数差值是m的

  • LCA2022-05-14 15:32:13

    最近公共祖先 LCA dfs向上标记-O(n) 点A先向根搜索并标记,点B再向上搜索,第一次碰到的标记即是lca。 复杂度On,不常用 倍增法-O(logn) dep[i]表示点i的深度 up[i,j]表示从i开始向root方向走2^j步数能走到的位置 若从i开始向根跳2^j次会跳出根则up[i,j]=0,dep[0]=0 具体过程: 【1】先让

  • 联表查询JOIN ON ★★★2022-05-13 19:00:45

    联表查询JOIN ON ★★★ 1、MySQL七种 join 理论 2、七种 join 理论练习 联表查询练习专用表SQL代码 -- 建表 CREATE TABLE tbl_dep( id INT(11) NOT NULL AUTO_INCREMENT, deptName VARCHAR(22) DEFAULT NULL, addr VARCHAR(22) DEFAULT NULL, PRIMARY KEY(id) )ENGINE = IN

  • P3241 [HNOI2015]开店 题解2022-05-11 19:02:30

    题面 这个题没有修改操作,所以不需要开线段树。跟平常的动态点分治做法一样,每个点开两个 vector 按照 \(x_i\) 排序存储到这个点和到这个点在点分树父亲的距离。每次找一个点的时候,暴力跳点分树父亲,直接在 vector 上二分查找满足 \([l,r]\) 这个区间的点和距离,直接计算即可。 点击

  • 【CodeForces 613D】Kingdom and its Cities2022-05-10 13:33:20

    链接 洛谷 题目大意 给定一棵树,多组询问,每组询问给定 \(k\) 个点,你可以删掉不同于那 \(k\) 个点的 \(m\) 个点,使得这 \(k\) 个点两两不连通,要求最小化 \(m\),如果不可能输出 \(-1\)。询问之间独立。 思路 虚树板题。 虚树 针对一些有多组特殊点的树上问题。 如果只有一组特殊点,就是

  • MySQL_分页优化2022-05-10 11:00:07

    MySQL_分页优化   起因: offset+limit方式的分页查询,当数据表超过100w条记录,性能会很差。 主要原因是offset limit的分页方式是从头开始查询,然后舍弃前offset个记录,所以offset偏移量越大,查询速度越慢。   举例: 分页 limit 2000000,25,这个等同于数据库要扫描出 2000025 条数据,然

  • 多表查询与可视化软件navicat2022-05-09 00:31:44

    多表查询 子查询思路 就相当于是我们日常生活中解决问题的方式(一步步解决) 将一条SQL语句的查询结果加括号当做另外一条SQL语句的查询条件 eg:以昨天的员工表和部门表为例 查询jason所在的部门名称 子查询的步骤 1.先查jason所在的部门编号 2.

  • 5.6 NOI模拟2022-05-07 21:05:29

    \(5.6\ NOI\)模拟 明天就母亲节了,给家里打了个电话(\(lj\ hsez\)断我电话的电,在宿舍打不了,只能用教练手机打了) 其实我不是很能看到自己的\(future,\)甚至看不到高三的希望,当然我不清楚我会被分到什么班(主要是停课前有几次考试考的很炸,最后一次才回到巅峰时期的一半,巅峰时

  • MySQL基础(2022-05-07 13:33:38

    内容概要 查询关键字 多表查询思路 多表查询练习题 可视化软件navicat 查询关键字 查询关键字之having过滤 having与where的功能是一模一样的 都是对数据进行筛选 where用在分组之前的筛选 havng用在分组之后的筛选 为了更好的区分 所以将where说成筛选 havng说成过滤 # 统

  • Mysql Day042022-05-07 01:34:44

    Mysql Day04 查询关键字之having过滤 having与where的功能是一模一样的 都是对数据进行筛选 where用在分组之前的筛选 havng用在分组之后的筛选 为了更好的区分 所以将where说成筛选 havng说成过滤 # 统计每个部门年龄在30岁以上的员工的平均薪资并且保留平均薪资大于10000

  • MySQL基础42022-05-07 01:31:58

    目录查询关键字之having过滤查询关键字之distinct去重、查询关键字之order by排序查询关键字之limit分页查询关键字之正则多表查询思路可视化软件之Navicat 查询关键字之having过滤 having与where的功能类似where用于条件筛选数据 多数shiyongyu-整体分组前 having用于分组之后的

  • MySQL基础(四)2022-05-07 01:31:41

    MySQL基础(五) 查询关键字 1.1 --- having过滤 1.2---distinct去重 1.3 ---order by排序 1.4 ---limit分页 1.5 ---regexp正则 多表查询思路 1.1---子查询 1.2---连表操作 可视化软件之Navicat 1.1---下载 1.2---使用 1.3---运行sql文件 查询关键字之having(过滤) having与where的功能

  • MySQL关键字查询2022-05-07 01:02:51

    目录数据建表准备一.查询关键字之having过滤二.查询关键字值distinct去重三.查询关键字值order by排序四.查询关键字之limit分页五.查询关键字之regexp正则六.多表查询1.连表操作有四个关键字七.可视化软件Navicat 数据建表准备 CREATE TABLE emp ( id INT NOT NULL UNIQUE auto_

  • 数据库(四)2022-05-07 01:00:36

    目录查询关键字之having过滤查询关键字之distinct去重查询关键字之order by排序查询关键字之limit分页查询关键字之regexp正则多表查询思路可视化软件之Navicat多表查询练习题 查询关键字之having过滤 having与where的功能是一模一样的,都是对数据进行筛选 where用在分组之前的筛选

  • 外键、表查询关键字2022-05-05 23:33:12

    外键 简介 创建一张员工表 id name age dep_name dep_desc 缺陷 1.表的重点不清晰(可以忽略) 既可以说是员工表也可以说是部门表 2.表中某些字段对应的数据一直在重复(可以忽略) 浪费存储空间 3.表的扩展性极差 牵一发而动全身(不能忽略) 耦合

  • MySQL数据库032022-05-05 23:01:18

    自增特性 create table t1( id int primary key auto_increment, name varchar(32) ); insert into t1(name) values('jason'),('kevin'),('tony'); insert into t1(name) values('oscar'); # id=4 delete from t1 where id=4

  • P8201 题解2022-05-04 12:03:25

    题意: 给定一棵树,定义 \(d(u,v)\) 为 \(u\) 和 \(v\) 路径上所有点权的异或,多组询问,给定 \(u,v,k\),问是否存在 \(x\) 使得 \(d(u,x) \bigoplus d(x,v)=k\)。 思路: 观察性质发现,如果存在 \(x\) 不在 \(u,v\) 路径上满足条件,那么 \(u,x\) 路径和 \(v,x\) 路径的第一个交点必然也满足

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有