1001

$ 1 \leq m \leq 10 $

像是状压的复杂度。

于是我们(用二进制)枚举留下的问题集合

然后把这个集合和问卷们的答案集合 $ & $ 一下

就可以只留下被选中的问题的答案了。

之后扫一遍随便判一下重。

1002

非空子串中字典序最小的子串长度一定是 $ 1 $ 。

咱们就记录一下每一个字母出现次数的前缀和,

每次询问就找到出现过的最先的那个字符就星了。

1003

整数规划好像是个NPC问题,

所以我们肯定不能直接上整数规划。

咱们来尝试把问题转换一下。

n=2

x1---y1
\ /
X
/ \
x2---y2

看起来像是个二分图。

二分图我们可以想到什么呢?

KM算法。

它有一个奇特的性质,

就是假设 $ x_i $ 和 $ y_j $ 被一条边 $ a_{i,j} $ 匹配上,

那么 $ x_i $ 的标签 $ l_i $ 和 $ y_j $ 的标签 $ r_j $ 有这样一个式子是成立的:

$ l_i + r_j \geq a_{i,j} $

题目要求 $ l_i + r_j \leq a_{i,j} $ ?

把它变成 $ - l_i - r_j \leq -a_{i,j} $ ,

然后硬上KM就好了。

注意标签的初始值。

1004

如果你有好办法,

请教教我这个蒟蒻吧。

1005

我们先想一下动态规划。

设 $ f_{i,j} $ 表示以第 $ i $ 个数打止的长度为 $ j $ 的上升子序列个数。

首先 $ f_{i,1} = 1 $ 。

然后也可以知道 $ f_{i,j} = \sum{f_{k,j-1}} , k < i \quad \mathrm{and}\quad q_k < q_i $ 。

这可以用一些树状数组来帮助它转移。

但是 $ 1 \leq n \leq 10000 $ ...

注意一下这句话。

你可以认为给定的排列是从所有 1,2,...,n 的排列中等概率随机选出的。

如果是随机数据的话,我们可以得知,

它的最长的lis不会太长

可能长度只有几百也说不定。

1006

要答案最优的话,

就先只用条件中给定的2种颜色跑一遍最小生成树,

然后“恰好k条满足条件的边”的答案就用剩下的边从小往大加来更新答案。

把红绿和绿蓝的情况分别搞一下。

注意图可能不连通。

2018"百度之星"程序设计大赛 - 资格赛 - 题集的更多相关文章

  1. 2018"百度之星"程序设计大赛 - 资格赛 1002 子串查询

    题面又是万能的毒毒熊... 实在不想写了,就只写了这题 记26个前缀和查询枚举最小值直接算 实在是氵的死 而且我忘记输出Case #%d 想了很久 >_< #include<bits ...

  2. 2018"百度之星"程序设计大赛 - 资格赛hdu6349三原色(最小生成树)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6349 题目: 三原色图 Time Limit: 1500/1000 MS (Java/Others)  ...

  3. 2018"百度之星"程序设计大赛 - 资格赛 A/B/E/F

    调查问卷  Accepts: 505  Submissions: 2436  Time Limit: 6500/6000 MS (Java/Others)  Memory Limit: 262144/ ...

  4. 子串查询(二维前缀数组) 2018"百度之星"程序设计大赛 - 资格赛

    子串查询 Time Limit: 3500/3000 MS (Java/Others)    Memory Limit: 262144/262144 K (Java/Others)Total Subm ...

  5. 2018"百度之星"程序设计大赛 - 资格赛

    调查问卷  Accepts: 1546  Submissions: 6596  Time Limit: 6500/6000 MS (Java/Others)  Memory Limit: 262144 ...

  6. HDU6383 2018 “百度之星”程序设计大赛 - 初赛(B) 1004-p1m2 (二分)

    原题地址 p1m2 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Total ...

  7. HDU6380 2018 “百度之星”程序设计大赛 - 初赛(B) A-degree (无环图=树)

    原题地址 degree Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)Tot ...

  8. hdu 6082 度度熊与邪恶大魔王(2017"百度之星"程序设计大赛 - 资格赛 )

    度度熊与邪恶大魔王 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total S ...

  9. 2014年百度之星程序设计大赛 - 资格赛 第二题 Disk Schedule

    双调欧几里得旅行商问题是一个经典动态规划问题.<算法导论(第二版)>思考题15-1和北京大学OJ2677都出现了这个题目. 旅行商问题描写叙述:平面上n个点,确定一条连接各点的最短闭合旅程 ...

随机推荐

  1. 从C++起步到MFC实战VC++软件工程师高端培训 视频保存在 播音员的网盘中

    从C++起步到MFC实战VC++软件工程师高端培训(服务器端开发方向)[共332课时]视频保存在 播音员的网盘中http://www.it1352.com/VideoTutorial/Details? ...

  2. 建堆复杂度O(n)证明

    堆排序中首先需要做的就是建堆,广为人知的是建堆复杂度才O(n),它的证明过程涉及到高等数学中的级数或者概率论,不过证明整体来讲是比较易懂的. 堆排过程 代码如下 void print(vector&l ...

  3. session的MaxInactiveInterval=0在tomcat6和tomcat8不同表现

    在tomcat6中调用 request.getSession().setMaxInactiveInterval(0); 这个session会立即过期. 而在tomcat8中,同样的调用,会导致这个se ...

  4. 其他信息: 尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。在VS中的解决方法

    第一种,不使用dataaccess,使用通用的Oracle.ManagedDataAccess,可以忽略版本问题 第二种,在属性——生成——web中iis express换成用本地IIS执行,但是这样 ...

  5. 关于使用Encoding转码的问题,以及StreamWriter的小应用

    StreamWriter write = new StreamWriter("../../test2.txt"); write.WriteLine("中国123巴西red ...

  6. 画X,模拟水题

    题目链接:http://codeforces.com/contest/404/problem/A #include <stdio.h> #include <string.h> ...

  7. 使用 NetBackup 命令创建 Hyper-V 策略(命令创建其他策略也是如此)

    Veritas NetBackup™ for Hyper-V 管理指南 Product(s): NetBackup (8.1) 使用 NetBackup 命令创建 Hyper-V 策略 本主题介绍如何 ...

  8. 2017.10.21 Java中的数据源与连接池技术

    1.数据源技术就是预先建立好一定的数量的数据库连接,并将这些连接保存在连接池中,有连接池负责对这些数据库连接管理,当访问数据库时,只需要从连接池中取出有空闲状态的数据库连接:当程序访问数据库结束时,释 ...

  9. Spring转换编码utf-8方式

    方式一:修改Spring配置文件(建议使用) <mvc:annotation-driven> <mvc:message-converters register-defaults=&q ...

  10. 旧文备份:Python国际化支持

    Python通过gettext模块支持国际化(i18n),可以实现程序的多语言界面的支持,下面是我的多语言支持实现: 在python安装目录下的./Tools/i18n/(windows下例 D:\P ...