HDU5892~HDU5901 2016网络赛沈阳

A、题意: 有一个n×n的格子, 有50种怪物. 有m个操作, 每次操作会往一个矩形区域放怪物, 每个格子放相同数目的怪物, 或者查询当前50种怪物的奇偶性.

分析:用2^50表示怪物的奇偶,然后就是二维区间异或问题,用二维树状数组

考虑一维情况,给一段区间[L,R]^X,询问[1,P]

       对于树状数组C[L..R],每个位置异或X的次数是奇、偶交错的的,而异或相同的一个数偶数次等于没异或,异或相同的一个数奇数次相当于异或一次

即将与L同奇偶的位置都异或一次(只有一次!)

     这就好比将原来的数组分成两部分(偶数位置和奇数位置),对一个数组的一段数字异或一个数字,询问的时候采取前缀异或和相减的做法,也就是区间修改,单点询问, 一维树状数组完全可以胜任。

扩展到二维,则需要四个数组,表示x的奇偶,y的奇偶

注意一点,一维时候对[l,R]来说,修改是L位置和R+1位置,询问是L-1位置和R位置,二维也是类似。

B、题意:一棵无根树,两种操作:改变路径上的颜色,和询问路径上有多少段颜色

分析:bzoj2243染色

此题是边权,也很好处理,将所有边的权赋给它下面的点,作为下面点的点权

树链剖分+线段树lazy标记

唯一注意的一点就是树链剖分两边上移的时候,因为要考虑一段与另一段是否有颜色衔接,所以不能简单的按同样法则上移(一般写法是比较x,y深度大小,深的上移,减少代码量),这里就两边分别上移,记录各边的情况。

C、题意:一个大小为 n 的环,选 m 个位置涂黑,要求相邻两个黑点之间至少间隔 kk个白点,问方案数 

分析:设xi表示第i个人和第i+1个人之间的间隔数(特别的Xm表示第m个人和第一个人之间的间隔)

易得x1+...+xm=n-m

      x1,x2...,xm>=k

设上面式子的整数解个数为X

那么ans=X*N/M(因为位置不一样,所以不同构,对于一组解可以绕着环转n下,但每个人当排头的情况都有重复,所以要除以M)

至于X的求法也是经典的求法了,X=C(n-m-m*(k-1)-1,m-1)

D、题意:看题

分析:指数循环节:

a^b mod c=a^(b mod φ(c)+φ(c)) mod c (b>φ(c))

这就可以让我们对g(n*y)直接取模了

现在如果能知道g(n)的通项,那就解决了

f(n)=f(n-2)+2*f(n-1)

f(n)*f(n-1)=f(n-2)*f(n-1)+2*f(n-1)*f(n-1);

2*f(n-1)*f(n-1)=f(n)*f(n-1)-f(n-2)*f(n-1);

连加得到g(n)=f(n)*f(n+1)/2;

接下来矩阵快速幂就行了

还有一个问题,因为模数不是质数,是你输入的,所以分母的2^x可能在模(s+1)下没有逆元

这里就要采取一个技巧

a/b mod c=x

a/b=kc+x

a=bkc+bx

a mod (bc)=bx

x=(a mod (bc))/b

这样就不会出现分母了!

E、 题意:给定一个n, 问有多少n个点的无向无重边无自环图满足有环

分析:ans=2^[(n-1)n/2]-f(n)

f(n)表示n个点组成的森林数,g(n)表示n个点组成的树的个数,明显g(n)=n^(n-2)

于是有f(n)=g(n)+sigma(C(n-1,i-1)*f(n-i)*g(i)) (1<=i<=n-1)

注:n个点构成的森林必然是n这个点和某些点构成树,剩下的构成森林

接下来就是除一下成卷积然后NTT(蒟蒻不会……)

F、

  

时间: 2024-11-08 20:59:08

HDU5892~HDU5901 2016网络赛沈阳的相关文章

hihoCoder 1391 Countries 【预处理+排序+堆】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛)

#1391 : Countries 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 There are two antagonistic countries, country A and country B. They are in a war, and keep launching missiles towards each other. It is known that country A will launch N missiles. The i-th miss

hihoCoder 1389 Sewage Treatment 【二分+网络流+优化】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛)

#1389 : Sewage Treatment 时间限制:2000ms 单点时限:2000ms 内存限制:256MB 描述 After years of suffering, people could not tolerate the pollution in the city any more, and started a long-lasting protest. Eventually, the municipal government made up its mind to deal w

hihoCoder 1392 War Chess 【模拟】 (ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛)

#1392 : War Chess 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 Rainbow loves to play kinds of War Chess games. There are many famous War Chess games such as "Biography of Cao Cao", "Anecdotes of Wagang Mountain", etc. In this problem, let's c

ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛 A Simple Job

描述 Institute of Computational Linguistics (ICL), Peking University is an interdisciplinary institute of science and liberal arts, it focuses primarily on the fundamental researches and applications of language information processing. The research of

ACM-ICPC国际大学生程序设计竞赛北京赛区(2016)网络赛 The Book List

描述 The history of Peking University Library is as long as the history of Peking University. It was build in 1898. At the end of year 2015, it had about 11,000 thousand volumes of books, among which 8,000 thousand volumes were paper books and the othe

2015长春、沈阳网络赛总结

我所说的总结并不是谈什么题目解法之类的东西 这些东西网上有很多题解 说说这两场网赛吧! 这两场我的状态还行,只是xiaodong还没有找到状态,长春赛lucas+中国剩余定理他硬是打了一整场,还是没打出来,版题没打出来确实不该 wzb状态一般,不过看题的能力依然那么厉害 长春赛中,很遗憾的只出了5道题,按当时过题数目,应该是7道德,可是小东的lucas那题没打出来,而我打得后缀数组那题,当顺时针的时候不用看是否是下标最前面的,但是反过来就需要看了,当时想当然的认为不用,交了4发,一直wa到比赛结

2015沈阳网络赛1003 Minimum Cut 树链剖分 数组维护前缀和进行区间增减

2015沈阳网络赛1003  Minimum Cut   树链剖分 数组维护前缀和进行区间增减 Minimum Cut Time Limit: 3000/2000 MS (Java/Others)    Memory Limit: 65535/102400 K (Java/Others)Total Submission(s): 0    Accepted Submission(s): 0 Problem Description Given a simple unweighted graph G 

2016 CCPC 网络赛 B 高斯消元 C 树形dp(待补) G 状压dp+容斥(待补) H 计算几何

2016 CCPC 网络赛 A - A water problem 水题,但读题有个坑,输入数字长度很大.. B - Zhu and 772002 题意:给出n个数(给出的每个数的质因子最大不超过2000),选出多个数相乘得b.问有多少种选法让b 为完全平方数. tags:高斯消元,求异或方程组解的个数.   好题 每个数先素数分解开.  对于2000以内的每个素数p[i],这n个数有奇数个p[i]则系数为1,偶数个则系数为0,最后n个数的p[i]系数异或和都要为0才会使得最后的积为完全平方数.

HDU 5880 Family View (2016 青岛网络赛 C题,AC自动机)

题目链接  2016 青岛网络赛  Problem C 题意  给出一些敏感词,和一篇文章.现在要屏蔽这篇文章中所有出现过的敏感词,屏蔽掉的用$'*'$表示. 建立$AC$自动机,查询的时候沿着$fail$指针往下走,当匹配成功的时候更新$f[i]$ $f[i]$表示要屏蔽以第$i$个字母结尾的长度为$f[i]$的字符串. 原文地址:https://www.cnblogs.com/cxhscst2/p/8452147.html