ICode9

精准搜索请尝试: 精确搜索
  • BZOJ 1208 宠物收养所(set 或者 splay)2019-09-08 14:55:23

    Description 最近,阿Q开了一间宠物收养所。收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。每个领养者都希望领养到自己满意的宠物,阿Q根据领养者的要求通过他自己发明的一个特殊的公式,得出该领养者希望领养的宠物的特点值a(a是一个正整数,a<2^31),而他也给每个处在

  • [BZOJ 3123] [SDOI 2013]森林(可持久化线段树+启发式合并)2019-09-07 14:00:37

    [BZOJ 3123] [SDOI 2013]森林(可持久化线段树+启发式合并) 题面 给出一个n个节点m条边的森林,每个节点都有一个权值。有两种操作: Q x y k查询点x到点y路径上所有的权值中,第k小的权值是多少。此操作保证点x和点y连通,同时这两个节点的路径上至少有k个点。 L x y在点x和点y之间连接

  • BZOJ 4316: 小C的独立集2019-09-04 17:01:23

    4316: 小C的独立集 思路:先将树上的转移做好。然后环上的转移就是强制最上面的的点选或者不选,然后在环上跑一遍转移就可以了。 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using namespace std; #define y1 y11 #defi

  • bzoj 1018 堵塞的交通traffic 线段树2019-09-02 13:00:24

    题意:有一个n * 2的网格图,有3种操作:给两个相邻的点加上一条边,断开相邻的两个点连着的边,询问两个点的连通性。 思路:直接看博客就行了,https://blog.csdn.net/roll_keyboard/article/details/81185535,在纸上画一画来确定4个顶点之间的更新关系。有一个需要注意的细节是有可能通过绕远

  • 【BZOJ 2138】stone2019-09-01 20:02:27

    Problem Description 话说 \(Nan\) 在海边等人,预计还要等上 \(M\) 分钟。为了打发时间,他玩起了石子。 \(Nan\) 搬来了 \(N\) 堆石子,编号为 \(1\) 到 \(N\),每堆包含 \(A_i\) 颗石子。 每 \(1\) 分钟,\(Nan\) 会在编号在 \([L_i, R_i]\) 之间的石堆中挑出任意 \(K_i\) 颗扔向大海(好疼

  • bzoj 5293 树上差分 and 倍增2019-09-01 11:04:53

    题意:问你树上两点之间路径上 sigma(每个点深度^k); 解: 1、树上倍增时维护每个深度k次幂到根的前缀和 2、树上差分+简单容斥 #include<bits/stdc++.h> using namespace std; #define MAXN 300010 #define maxn 300010 #define en '\n' #define ll long long int MAXLOG; const

  • BZOJ 3998: [TJOI2015]弦论 SAM2019-08-29 09:52:53

    title BZOJ 3998 LUOGU 3975 Description 对于一个给定的长度为 \(n\) 的字符串,求出它的第 \(k\) 小子串是什么。 analysis 建出 \(SAM\) 求 \(K\) 大。 \(T=0\) 除了根以外的状态都代表 \(1\) 个串; \(T=1\) 每个状态 \(fail\) 子树结束结点个数即为串的个数。 code #include<bi

  • [BZOJ] 书堆2019-08-26 22:01:05

    问题描述 蚂蚁是勤劳的动物,他们喜欢挑战极限?现在他们迎来了一个难题!蚂蚁居住在图书馆里,图书馆里有大量的书籍。书是形状大小质量都一样的矩形。蚂蚁要把这些书摆在水平桌子的边緣。蚂蚁喜欢整洁的布置,所以蚂蚁规定书本必须水平摆放,宽必须平行于桌緣(如图),而且不允许同一高度摆多本

  • BZOJ 5329: [Sdoi2018]战略游戏 圆方树+虚树Dp2019-08-22 13:00:57

    title BZOJ 5329 LUOGU 4606 双倍经验(弱化版):LUOGU 4320 道路相遇 简化题意: \(T\) 组数据,每组数据有一张无向图,\(q\) 个询问,每次给定一个集合 \(S\),求有多少个点满足删除这个点后,\(S\) 中至少有两个点不连通。 \(1\leqslant T\leqslant 10\) \(2\leqslant n\leqslant 10^5,且n-1\l

  • bzoj 30652019-08-18 23:56:11

    3065: 带插入区间K小值 Time Limit: 60 Sec  Memory Limit: 512 MBSubmit: 5067  Solved: 1658[Submit][Status][Discuss] Description 从前有n只跳蚤排成一行做早操,每只跳蚤都有自己的一个弹跳力a[i]。跳蚤国王看着这些跳蚤国欣欣向荣的情景,感到非常高兴。这时跳蚤国王

  • BZOJ 3622: 已经没有什么好害怕的了 组合数+Dp2019-08-18 21:53:46

    title BZOJ 3622 LUOGU 4859 简化题意: 两个数列 \(\{a_n\}\),\(\{b_n\}\),求 \(a_i>b_i\) 的组数恰好比 \(b_i>a_i\) 的组数多 \(k\) 组的情况个数。 analysis 可以转化一下题目所求,也是为了方便: 令 \(k=\frac{n+k}{2}\),即有恰好 \(k\) 组糖果比药片大(\(a_i>b_i\))。 显然要将 \(

  • BZOJ 2818 欧拉函数,线性筛2019-08-16 20:01:30

    题目链接:https://www.acwing.com/problem/content/description/222/ 给定整数N,求1<=x,y<=N且GCD(x,y)为素数的数对(x,y)有多少对。 GCD(x,y)即求x,y的最大公约数。 输入格式 输入一个整数N 输出格式 输出一个整数,表示满足条件的数对数量。 数据范围 1≤N≤10^7 输入样例: 4 输

  • BZOJ 3679 数字之积 数位DP2019-08-16 19:58:33

    思路:数位DP 提交:\(2\)次 错因:进行下一层\(dfs\)时的状态转移出错 题解: 还是记忆化搜索就行,但是要用\(map\)记忆化。 见代码 #include<cstdio> #include<iostream> #include<map> #define R register int #define ll long long using namespace std; namespace Luitaryi { template

  • bzoj 4774 修路2019-08-15 17:01:42

    Description 村子间的小路年久失修,为了保障村子之间的往来,法珞决定带领大家修路。对于边带权的无向图 G = (V, E), 请选择一些边,使得1 <= i <= d, i号节点和 n - i + 1 号节点可以通过选中的边连通,最小化选中的所有边 的权值和。     Input 第一行三个整数 n, m,d,表示图的点数

  • BZOJ 4769: 超级贞鱼 逆序对 + 归并排序2019-08-15 13:00:43

    Code:  #include <cstdio> #include <algorithm>#include <cstring> #define N 2000004 #define ll long long #define setIO(s) freopen(s".in", "r" , stdin) using namespace std; namespace IO { char *p1,*p2,buf[100000];

  • bzoj 26882019-08-15 09:56:21

    卡特兰数+博弈论+dp 树上删边游戏的公式是一个节点的$sg$值为儿子节点$sg$值$+1$的异或和。 设$dp_{i,j}$表示$i$个节点的二叉树$sg$值为$j$的概率,二叉树个数为卡特兰数,转移即可。 整个游戏的$sg$值等于每棵二叉树的$sg$值异或和。 设$g_{i.j}$为前i棵二叉树$sg$值为$j$的方案数,转

  • BZOJ 3786: 星系探索 ETT2019-08-10 17:03:31

    Code:  #include <cstdio>#include <algorithm> #define N 200005 #define ll long long #define lson t[x].ch[0] #define rson t[x].ch[1] #define setIO(s) freopen(s".in", "r", stdin) using namespace std;

  • BZOJ 1070: [SCOI2007]修车 最小费用最大流2019-08-09 23:06:32

    title BZOJ 1070 LUOGU 2053 题目描述 同一时刻有N位车主带着他们的爱车来到了汽车维修中心。维修中心共有M位技术人员,不同的技术人员对不同的车进行维修所用的时间是不同的。现在需要安排这M位技术人员所维修的车及顺序,使得顾客平均等待的时间最小。 说明:顾客的等待时间是指从他

  • BZOJ 1061: [Noi2008]志愿者招募 最小费用最大流2019-08-09 22:53:19

    title BZOJ 1061 Description   申奥成功后,布布经过不懈努力,终于成为奥组委下属公司人力资源部门的主管。布布刚上任就遇到了一个难题:为即将启动的奥运新项目招募一批短期志愿者。经过估算,这个项目需要N 天才能完成,其中第i 天至少需要Ai 个人。 布布通过了解得知,一共有M 类志愿

  • [欧拉函数] Bzoj P2226 LCMSum2019-08-08 11:55:53

    Description Given n, calculate the sum LCM(1,n) + LCM(2,n) + .. + LCM(n,n), where LCM(i,n) denotes the Least Common Multiple of the integers i and n.   题解   代码 1 #include <cstdio> 2 #include <iostream> 3 #define N 1000010 4 #define ll long

  • 【bzoj 2870】 最长道路tree2019-08-04 22:02:38

    题目 边分治 边分和点分相比就是找到一条重心边,考虑所有经过这条边的路径,之后断开这条边分成两个联通块,继续分治 由于每次分治重心是一条边,所以只会产生两个联通块,考虑两个联通块显然要比像点分那样考虑多个联通块容易 但是边分有一个问题,就是遇到菊花图就自闭了,复杂度变成了\(O(n^

  • 【bzoj 4318】OSU!2019-08-04 19:51:10

     题意   一个长度为 $n$ 的字符串,第 $i$ 位有 $p_i$ 的概率是 $1$,否则是 $0$。一个字符串的分数定义为:对于字符串中每一个极长的连续一段 $1$,设这段 $1$ 的长度为 $x$,分数累加 $x^3$。   求字符串的期望分数。  题解   考虑分数累加 $x^3$ 而不是 $x$ 时怎么做。   设 $f

  • BZOJ 4653: [Noi2016]区间 双指针 + 线段树2019-08-01 16:57:51

    Code:  #include <cstdio>#include <string>#include <algorithm> using namespace std; namespace IO { inline void setIO(string s) { string in=s+".in"; string out=s+".out"; freopen(in.c_str(),&qu

  • BZOJ 4488: [Jsoi2015]最大公约数 暴力 + gcd2019-08-01 09:02:10

    Code:  #include <bits/stdc++.h>#define setIO(s) freopen(s".in","r",stdin) #define maxn 100004 #define ll long long using namespace std; ll gcd(ll a,ll b) { return b?gcd(b,a%b):a; }ll arr[maxn],gc[maxn]; int pos[maxn],b[

  • BZOJ 4399: 魔法少女LJJ 线段树合并 + 对数2019-07-31 14:01:19

    Code:  #include <cstdio>#include <algorithm> #include <cmath> using namespace std; #define ls lson[x]#define rs rson[x] #define setIO(s) freopen(s".in","r",stdin),freopen(s".out","w",stdout) cons

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

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

ICode9版权所有