ICode9

精准搜索请尝试: 精确搜索
  • bzoj 2694: Lcm2020-03-25 22:55:55

    LINK:LCM T组数据,\(T\leq 10000\)\(A,B\leq 4000000\) 简述一下这道题的式子:A,B用n,m来代替\(\sum_{i=1}{n}\sum_{j=1}^{m}\mu((i,j))^2LCM(i,j)\) 我们可以简单推式子 推出: \(\sum_{w=1}^{n}w\cdot S(\frac{m}{w})\cdot S(\frac{n}{w})\cdot\sum_{x|w}x\cdot\mu(x)\mu(\frac{w

  • BZOJ 5544: [PA2019]A + B2020-03-19 21:54:06

    设 \(f_i\) 为前 \(i\) 位能由多少种方案组成 那么要么就是正常的得到方式,可以由 \(f_{i-1}\) 转移来,方案数为 \(f_{i-1} \times cnt_{s_i}\) 错误的得到方式就由 \(f_{i-2}\) 转移得来,方案数为 \(f_{i-2} \times cnt_{s_{i-1}, s_i}\) #include <bits/stdc++.h> #define pb push_

  • BZOJ - 3730 震波 (点分树+树状数组)2020-03-18 12:56:03

    两种操作: 1.查询与树上结点x距离不超过k的结点权值之和 2.将结点x的权值修改为y 点分树模板题。 首先考虑一种比较暴力的做法:用树形dp的思想,将树转化成有根树,设f[u][k]为结点u子树下与其距离不超过k的点权和,则ans(x,k)=f[u][k]+f[fa[u]][k-1]-f[u][k-2]+f[fa[fa[u]]][k-2]-f[fa[u]

  • bzoj 3065: 带插入区间K小值2020-03-13 21:05:11

    LINK:bzoj 3065 带插入区间K小值 最终还是想把这道题给A掉。很久以前都思考过的题目了 结果都是败北。 这道题可以块状链表来写 但是我曾经学的块状链表忘了 也好像很难写的样子。。 考虑树套树 由于带插入必然使用平衡树这个数据结构来做,考虑区间第k大 首选主席树。 我们平衡树保

  • BZOJ-4242 水壶2020-03-07 15:52:38

    题目大意 某市是一个被分成$Htimes W$块区域的长方形,每个区域都是建筑物、原野、墙壁之一。建筑物的区域有$P$个,编号为$1dots P$。只有建筑物和原野能够进入,而且每次只能走到相邻的区域中,且不能移动到市外。现在需要在各个建筑物之间往返。在原野上每走过一个区域都需要$1$单位的

  • @bzoj - 3328@ PYXFIB2020-03-05 12:03:32

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定序列 F:\(F_0 = 1, F_1 =1, F_n = F_{n-1} + F_{n-2} (n > 1)\) 给定 n, k, p,保证 p 为质数且 p 除以 k 的余数为 1。求: \[\sum_{i=0}^{\lfloor \frac{n}{k} \rfloor}C_{n}^{ik}\times F_{ik}\]

  • @bzoj - 2595@ 游览计划2020-03-05 11:01:36

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 从未来过绍兴的小D有幸参加了Winter Camp 2008,他被这座历史名城的秀从未来过绍兴的小D有幸参加了Winter Camp 2008,他被这座历史名城的秀丽风景所吸引,强烈要求游览绍兴及其周边的所有景点。 主办

  • BZOJ 5052: 繁忙的财政官2020-02-25 11:53:52

    对于每一个左端点,考虑其右边那些能更新答案的点 先考虑在其右边且值比当前大的,小的可以将值翻转后做一遍 即对左端点 \(i\),找到 \(j>i\) 满足 \(a_j>a_i\) 首先找到一个 \(j\),下次在 \(j\) 右边找到一个 \(k\) 满足 \(a_j > a_k > a_i\) 但是这样的点对还是有很多,考虑找下个 \(k\)

  • BZOJ 4002: [JLOI2015]有意义的字符串2020-02-24 20:57:04

    看到式子的形式,可以想到斐波那契数列的通项的形式 设 \(f_n = \left(\dfrac{b+\sqrt d}{2}\right)^n + \left(\dfrac{b-\sqrt d}{2}\right)^n\) 这两个是方程 \(x^2-bx+\dfrac{b^2-d}{4}=0\) 的两根 根据特征方程及特征根可以得到递推式 \[f_n=bf_{n-1}-\frac{b^2-d}{4}f_{n-2}\]

  • BZOJ 1086: [SCOI2005]王室联邦2020-02-22 14:03:39

    维护一个栈,从任意一个节点开始 dfs,在回溯时加入到栈中。 dfs每一个子树之后,若相对于刚进入该节点时栈的大小,新增加的节点超过 B,就将它们分为一块 这样分完保证不超过 2B,而整个dfs结束之后,若栈中还有节点,就把它们归为最后一块 #include <bits/stdc++.h> #define pb push_back #defi

  • new_bzoj(Matrix)2020-02-22 11:38:46

    题目 这是一道比较裸的二维hash题目,题解出自进阶书。 思路就是列与列之间相乘p[1],行与行之间相乘p[n],其实挺好理解的,就是你把每一行的数都按顺序放在第一行后面求得的hash值就是这些,然后离线操作。 #include<bits/stdc++.h> #define ll long long #define ull unsigned long

  • BZOJ 2127 Happiness2020-02-20 13:04:31

    BZOJ 2127 Happiness (默认题面是 wyy PPT里面的题面) 我们先考虑两个人的情况,如果只有两个人,考虑从 $ s $ 向它们连边,割掉表示帮,再从它们向 $ t $ 连边,表示不帮。同时如果两个人没有选择相同的行为,我们认为这样会产生损失,注意到如果两个人选择的行为不一样,如果我们把这两个人之间连

  • BZOJ 1497 [NOI2006]最大获利2020-02-20 09:54:11

    BZOJ 1497 [NOI2006]最大获利 从原点向每个中转站建立容量为 $ p_i $ 的边,再从中转站向以它作为条件的用户群建立 $ +\infin $ 的边,最后从用户群向汇点建立 $ c_i $ 的边,医院的权值和 - 最小割就是答案。 为什么这样是对的呢?考虑我们满足一个用户组的需求,无非就是不要这个需求(割掉

  • BZOJ 3280: 小R的烦恼2020-02-20 09:03:49

    Description 小R最近遇上了大麻烦,他的程序设计挂科了。于是他只好找程设老师求情。善良的程设老师答应不挂他,但是要 求小R帮助他一起解决一个难题。问题是这样的,程设老师最近要进行一项邪恶的实验来证明P=NP,这个实验一共 持续n天,第i天需要a[i]个研究生来给他搬砖。研究生毕竟也是

  • BZOJ 2120:数颜色2020-02-06 21:56:28

    初始给定一个长度为n的数列,给定m次操作,每次要么询问区间[L,R]中有多少种不同的数字,要么修改一个位置的数值。 n<=1e4,m<=1e4,ai<=1e6 询问区间内有多少种不同的数字容易联想到主席树,这边带修改的话那么就树套树了 先回顾一下如果不带修改怎么做,一种做法是对每个位置维护上一个跟当

  • 【BZOJ 3601】一个人的数论2020-02-05 15:51:16

    题目 求\(\sum_{i=1}^n[(i,n)=1]i^m\)。\(n\)非常大,以质因数分解后的形式给出。 随手反演一波,上面那个式子就是 \[\sum_{d|n}\mu(d)\sum_{i=1}^{\frac{n}{d}}(i\times d)^m=\sum_{d|n}\mu(d)d^m\sum_{i=1}^{\frac{n}{d}}i^m\] 我们发现这有一个自然数幂次方和,众所周知这是一个\(m+

  • BZOJ 4894: 天赋 矩阵树定理2020-02-03 18:04:22

    code: #include <cstring> #include <cstdio> #include <algorithm> #define N 303 #define mod 1000000007 #define ll long long #define setIO(s) freopen(s".in","r",stdin) using namespace std; char S[N]; int

  • BZOJ 4767: 两双手2020-02-02 18:57:52

    犯了个睿智错误调了30min真是吃**了 首先由于\(Ax\times By-Ay\times Bx\not =0\),那么我们显然可以把两种走法看作基底,每个点都可以表示成两种走法的次数的有序数对 显然这种表示法是唯一的(如果存在的话) 那么原来的问题其实就变成一般的坐标系上走路了,只能向上和向右,不能经过障碍

  • BZOJ 3601: 一个人的数论2020-02-02 15:51:22

    小清新数学题,全是套路真是舒适无比的说 我们先化一下式子: \[ans=\sum_{i=1}^n [\gcd(i,n)==1] i^d\] \[=\sum_{i=1}^n \sum_{t|i,t|n} \mu(t) \times i^d\] \[=\sum_{t|n}\mu(t) \sum_{i=1}^{\frac{n}{d}} (it)^d\] \[=\sum_{t|n}\mu(t)\times t^d\times \sum_{i=1}^{\frac{n}

  • BZOJ 3529. [Sdoi2014]数表2020-02-02 12:07:26

      $$\sum_{i=1}^{n}\sum_{j=1}^{m}\sigma_{1}(\gcd(i, j))[\sigma_1(\gcd(i,j))\leq a]$$首先忽略 $\sigma_1(\gcd(i,j))\leq a$ 的限制即求$$\sum_{i=1}^{n}\sum_{j=1}^{m}\sigma_{1}(\gcd(i, j))$$$$=\sum_{d=1}^{\min\{n,m\}}\sigma_{1}(d)\sum_{i=1}^{n}\sum_

  • BZOJ 5125 小Q的书架2020-02-01 15:56:44

    1 #include<iostream> 2 #include<cstdio> 3 #include<cstring> 4 #include<algorithm> 5 using namespace std; 6 int c[50005],tr,tl,f[30][50005],a[50005],s,n,k; 7 void del(int x) 8 { 9 while (x<=n) 10 { 11 c[x

  • [BZOJ 2865]字符串识别(后缀数组+线段树)2020-01-31 20:02:28

    [BZOJ 2865]字符串识别(后缀数组+线段树) 题面 给定一个字符串S,与一个整数K,定义S的子串T=S(i, j)是关于第K位的识别子串,满足以下两个条件: 1、i≤K≤j。 2、子串T只在S中出现过一次。 现在,给定S,XX希望知道对于S的每一位,最短的识别子串长度是多少. \(|S| \leq 5 \times 10^5\)  分析

  • BZOJ 4820: [Sdoi2017]硬币游戏2020-01-31 19:02:41

    好仙的题目啊,本来是KMP里的题但最后该用的地方被我用Hash艹过去了算了反正这不是这道题的重点 考虑一个暴力的想法,我们把所有串扔进一个AC自动机里,然后在fail树上跑DP,假设\(f_x\)表示节点\(x\)表示的状态出现的概率为\(x\),那么有: \[f_{ch_{x,i}}=\sum_{i=0}^1 \frac{1}{2}\times f

  • BZOJ 3681: Arietta2020-01-30 23:00:08

    数据结构优化建图的网络流,还需要Dsu on tree和可持久化,但也不大难写 很容易想出暴力的做法,把操作和音符看作二分图,然后就是求一个最大匹配,转化一下就是一个最大流 此时的边数目是\(O(nm)\)的,显然需要优化边数 树上子树内信息的维护般就那么几种,这里DFS+主席树上树无法维护(因为颜色

  • BZOJ 4602: [Sdoi2016]齿轮2020-01-30 17:57:48

    超级SB题,写题解纯粹是为了水博客,刚开始WA了一发因为又被题意杀了,我以为不连通就不能同时转(脑洞清奇) 首先我们容易想到先给原图同一颗生成树出来(不连通的话就是森林),然后假定某个点转\(1\)圈,顺带求出其它每个点转的圈数 然后再枚举非生成树边,判断是否可行即可,注意精度要用EPS判断 PS

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

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

ICode9版权所有