比赛链接:https://www.bnuoj.com/v3/contest_show.php?cid=9146#info

A题

国际象棋棋盘,黑白相间染色。

B题

最大值只取决于每个连通块的大小,一个连通块大小是k,它就会让结果乘以2^(k-1)。

C题

概率dp。居然第二天又考到没看出来。设dp[i]表示i变成1的的期望次数。

dp[i]=(1/k)Σ(dp[i/j]+1)。j是i的因子。

D题

本来以为是数学公式题,后半场才发觉可以状态转移。dp[n][g][k]表示n个人分成g组,每组人数在[1,k]之间的方案数。先memset(dp,0),然后dp[1][1][k]=1。

然后dp[n][g][k]=Σdp[n-i][g-1][k], 1<=i<=k。然后用这个dp可以推出结果。

更具体一点,两个兵种的分组数量只有四种情况,ababa,babab,abab,baba。然后枚举分组数量,根据刚才的dp推一下结果。

E题

以重心为原点做极角序。

F题

对于每个查询,枚举最短边,然后做Kruskal,直到源点到汇点连通。注意多组数据。

G题

因为置换满足结合律,所以可以求出一次置换,然后做m次方的快速幂。

H题

贪心的策略模拟打牌。

I题 

网上找的题解没看懂,还是用自己的笨办法吧。

能组成三角形的分为三种情况:三条边互不相等的,有两条边相等的,三条边都相等的。

对于三条边互不相等的,长度为i的有几个可以处理出来,然后用卷积处理处和为k的有几个。然后减去有相等的方案数,然后除以2,变成组合数。然后枚举最大边的长度,用卷积结果的后缀和减去不合要求的方案数(不合要求的方案数包括有一条边比这条边大、有两条边比这条边大的情况)。

对于有两条边相等的,枚举相等的两条边的长度,用树状数组求对应区间的和,然后扣除自己那一个点。

对于三条边都相等的,直接枚举边的长度。

BNU-2017.7.3排位赛1总结的更多相关文章

  1. 2017 ZSTU寒假排位赛 #7

    题目链接:https://vjudge.net/contest/149498#overview. A题,水题,直接按照题意模拟一下即可. B题,我用的是线段树.大力用的差分标记(上次听zy说过,下次再 ...

  2. 2017 ZSTU寒假排位赛 #1

    题目链接:https://vjudge.net/contest/147102#overview. A题:给出一堆的点,要找出两条垂直的直线,一条与x轴呈45度.-->使得所有的点到任意一条直线的 ...

  3. 2017 ZSTU寒假排位赛 #2

    题目链接:https://vjudge.net/contest/147632#overview. A题,状态压缩一下然后暴力即可. B题,水题,略过. C题,有负数,前缀和不是单调的,因此不能用尺取法 ...

  4. 2017 ZSTU寒假排位赛 #8

    题目链接:https://vjudge.net/contest/149845#overview. A题,水题. B题,给出 p个 第一个人的区间 和 q个第二个人的区间,问[l,r]中有多少个整数满足 ...

  5. 2017 ZSTU寒假排位赛 #6

    题目链接:https://vjudge.net/contest/149212#overview. A题,水题,略过. B题,水题,读清题意即可. C题,数学题,如果把x表示成x=nb+m,则k=n/m ...

  6. 2017 ZSTU寒假排位赛 #5

    题目链接:https://vjudge.net/contest/148901#overview. A题,排序以后xjbg即可. B题,弄个数组记录当前列是不是删除以及当前行是不是已经大于下一行然后乱搞 ...

  7. 2017 ZSTU寒假排位赛 #4

    题目链接:https://vjudge.net/contest/148543#overview. A题:n个罪犯,每个人有一个犯罪值,现在要从里面选出连续的c个人,每个人的犯罪值都不能超过t,问选法的 ...

  8. 2017 ZSTU寒假排位赛 #3

    题目链接:https://vjudge.net/contest/147974#overview. A题,费用流,不会..跳过了. B题,给一个图,问至少添加几条边能成为强连通图.显然缩点,要使得成为一 ...

  9. 2017杭电ACM集训队单人排位赛 - 6

    2017杭电ACM集训队单人排位赛 - 6 排名 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 59 1 X X 1 1 X X 0 1 ...

  10. 2017杭电ACM集训队单人排位赛 - 2 题解

    1001,水题,直接模拟即可.比赛中开局连wa三发,因为把int写成了bool.. 1002,积分题,比赛中找到了下面这个积分公式, 但是并没什么用,,因为带入以后存在误差,估计是展开了以后出现了误差 ...

随机推荐

  1. Python基础入门(迭代器和生成器)

    1 Python迭代器 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束. 迭代器只能往前不会后退. 迭代器有两个基本的方法:iter() 和 ...

  2. 239. [LeetCode ]Sliding Window Maximum

    Given an array nums, there is a sliding window of size k which is moving from the very left of the a ...

  3. ubuntu安装和查看已安装软件

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...

  4. jdbc 6.0

    1.获取数据库自动生成的键值 package com.rong.jielong; import java.sql.Connection; import java.sql.DriverManager; ...

  5. 《构建之法》第6~7章读后感和对Scrum的理解

    第6章 敏捷流程 “敏捷流程”是一系列价值观和方法论的集合.从2001年开始,一些软件界的专家开始倡导“敏捷”的价值观和流程, 他们肯定了流行做法的价值,但是强调敏捷的做法更能带来价值. 敏捷开发原则 ...

  6. java结合testng,利用XML做数据源的数据驱动示例

    testng的功能很强大,利用@DataProvider可以做数据驱动,数据源文件可以是EXCEL,XML,YAML,甚至可以是TXT文本.在这以XML为例: 备注:@DataProvider的返回值 ...

  7. 小工具xml生成记录

    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent ...

  8. 利用vs10和opencv识别图片类型身份证的号码

    遇到的问题: 1 持续灰色图像框 waitkey()要在imshow()之前调用. 2 CvRect 和Rect CvXXX是C语言的接口,cv::XXX是C++语言的接口.两者混在一起容易出错 3 ...

  9. 使用 Maven 管理项目

    最近的练手项目使用的是 Maven 在管理项目,在使用 Maven 管理项目时,三层的开发时分模块开发的,parent-dao-service-web,所有的spring+struts + Hiber ...

  10. 【C++】深度探索C++对象模型读书笔记--构造函数语义学(The Semantics of constructors)(四)

    成员们的初始化队伍(member Initia 有四种情况必须使用member initialization list: 1. 当初始化一个reference member时: 2. 当初始化一个co ...