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、
G、题意:一个数字,它每个数位上的奇数都形成偶数长度的段,偶数位都形成奇数长度的段他就是好的。问[L , R]的好数个数
     分析:数位dp
             dp[i][j][k][l]表示第i位 前一位奇偶性为j,连续了k位,l表示是否有前导零
H、
I、题意:n 个pair<int , int>,每次可以选相邻两个pair。如果他们的first不互质就可以把它们都删掉,并且获得second之和的分数,问最大得分
    分析:先n^3弄出一个f[i][j]表示i...j能否完全消掉
             f[i][j]|=f[i][k]&f[k+1][j] f[i][j]|=f[i+1][j-1]&(gcd(first[i],first[j])>1)
             dp[i][j]=max(dp[i][k]+dp[k+1][j],dp[i+1][j-1]+second[i]+second[j](f[i+1][j-1]==1)
J、题意:求1e11内素数有多少个
    分析:论文题http://codeforces.com/contest/665/problem/F    

  

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

  1. HDU5878~HDU5891 2016网络赛青岛

    A.题意:给出一个整数n, 找出一个大于等于n的最小整数m, 使得m的质因数只有2 3 5 7 分析:预处理出质因数2 3 5 7的数,超过maxt就行,然后找 B.题意:求1/1^2+1/2^2+. ...

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

    描述 Institute of Computational Linguistics (ICL), Peking University is an interdisciplinary institute ...

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

    描述 The history of Peking University Library is as long as the history of Peking University. It was b ...

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

    #1389 : Sewage Treatment 时间限制:2000ms 单点时限:2000ms 内存限制:256MB 描述 After years of suffering, people coul ...

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

    #1391 : Countries 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 There are two antagonistic countries, countr ...

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

    #1392 : War Chess 时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 Rainbow loves to play kinds of War Chess gam ...

  7. 2018 ICPC 沈阳网络赛

    2018 ICPC 沈阳网络赛 Call of Accepted 题目描述:求一个算式的最大值与最小值. solution 按普通算式计算方法做,只不过要同时记住最大值和最小值而已. Convex H ...

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

    题目链接  2016 青岛网络赛  Problem C 题意  给出一些敏感词,和一篇文章.现在要屏蔽这篇文章中所有出现过的敏感词,屏蔽掉的用$'*'$表示. 建立$AC$自动机,查询的时候沿着$fa ...

  9. 沈阳网络赛 F - 上下界网络流

    "Oh, There is a bipartite graph.""Make it Fantastic." X wants to check whether a ...

随机推荐

  1. python简单爬虫定时推送同花顺直播及荐股至邮箱

    1.初衷:实践 2.技术:python requests Template 3.思路:根据直播页面获取评价最高的前十博主,定时爬行最新的消息和实战股票 4.思路:python 编辑简单邮件html模板 ...

  2. Tomcat源码分析之—具体启动流程分析

    从Tomcat启动调用栈可知,Bootstrap类的main方法为整个Tomcat的入口,在init初始化Bootstrap类的时候为设置Catalina的工作路径也就是Catalina_HOME信息 ...

  3. 腾讯TOS

    腾讯TOS 手机操作系统 3月3日开启内测[日期:2015-02-11]     来源:Linux社区  作者:Linux     [字体:大 中 小] 腾讯TOS 操作系统 3月3日开启内测 2月1 ...

  4. Scikit-Learn模块学习笔记——数据预处理模块preprocessing

    preprocessing 模块提供了数据预处理函数和预处理类,预处理类主要是为了方便添加到 pipeline 过程中. 数据标准化 标准化预处理函数: preprocessing.scale(X, ...

  5. 北理工c语言期末考试

    1 给定一个区间,输出其中前半部分数字之和等于后半部分数字之和的数,没有则输出No output.(15分) 题目内容: 给定一个区间,输出其中前半部分数字之和等于后半部分数字之和的数,没有则输出No ...

  6. 第二章《深入C#数据类型》项目经理评分

    一:创建MyOffices项目,创建UserInfo类,用来存储员工 工号,姓名,年龄,评价,年度得分 二:创建查看评分窗体(frmShow),添加定义员工数组,将员工数据绑定到frmShow窗体的L ...

  7. NVIDIA显卡设置

    在玩3D游戏时,因为我的显卡不是特别给力,所以针对性能做出牺牲质量换取性能的调整. 简单设置 简单的方法是,3D设置-通过预览调整图像设置,根据偏重点来设置平衡:性能或者质量. 高级设置 如果你想自行 ...

  8. 代码静态解析PMD

    在正式进入测试之前,进行一定的静态代码分析及code review对代码质量及系统提高是有帮助的,以上为数据证明 Pmd 它是一个基于静态规则集的Java源码分析器,它可以识别出潜在的如下问题:– 可 ...

  9. [No00005A]word多文档合一

    2个方法:法一,一个个插入,法二,一次性插入多个. 法一: 视图->大纲视图 点击 大纲 -> 显示文档 点击插入,逐个插入文档.. 最终 将视图调回页面视图..结束. 法二: 插入 - ...

  10. 转:Eclipse SVN插件比较 Subclipse vs Subversive

    结论:还是用久经考验的 Subclipse http://www.wkii.org/eclipse-svn-plugins-subclipse-vs-subversive.html