今天是学长wsy的题,我理论会100+50+30=180,实际100+20+10=130,充分体现我的菜

最近日常模拟赛挂分50到60,很危险,这2天一定要调整好。。。

Upd:T2我认为50的划分数做法其实是100分做法。。。

Upd:T3我猜出了式子的形式却没推出来。。。

感觉浪费了ak场。。。(不过5h估计也写不完。。。)如果是lqs/wzy一定随手ak吧。。。

对超常发挥的T1记录一下吧:(zr的题题面就不放了)

大致思路:

考虑枚举a一个一个暴力建图

不难发现a新建边只对>a的点有作用                  --------------用时20min

所以建图过程可以认为是从小到大枚举a,把比a大的a的邻居连成团

暴力维护团/dfs直接建边都有O(n^3/6)或者O(n^2)的50分建图做法(常数超小)  -------------用时30min

认为图是有向的,从小向大连,图是一个DAG              -------------用时40min

考虑答案统计,一个点的限制是与之相邻的点

类比树的染色,DAG的染色的困难在于

1---->2

|         |

v       v

3---->4

的图中4的染色时2,3是否相同需要讨论

观察题中DAG的性质,发现对于节点i(如图中1),任意2个出边的点之间有边,即图中1,2,3的关系不会有

答案是每个点(n-出度)的乘积

此时比赛已经开始60分钟,写了O(n^3/6)得到50分

边数一共是O(n^2)条,复杂度O(n^3)怎么也不合理

观察重要结论:每次连所有比a大的邻居成团的时候只需要连最小的b和其他所有邻居即可

因为剩下的在枚举到b之前无用,而在枚举到b时一定会加入进去

85分钟 写了O(n^2)仍然50分

本着T1不a一定掉分的信念继续想

观察刚才的重要结论:

每次相当于把a的所有邻居变成b的邻居,维护邻居集合,每次合并a,b即可

暴力set启发式合并O(nlog^2n)

线段树合并/平衡树合并有望O(nlogn)

最终set启发式合并水过此题(少有的小常数)-----------------------总用时120min

感觉思路非常妙啊。。。

虽然巨佬们肯定认为这是一道水题。。。

20190317 A的更多相关文章

  1. WordPress plugin Contact Form [CSRF → LFI] vulnerable 2019-03-17

    # Exploit Title: Contact Form by WD [CSRF → LFI]# Date: 2019-03-17# Exploit Author: Panagiotis Vagen ...

  2. WordPress Plugin Form Maker [CSRF → LFI] vulnerable 2019-03-17

    # Title: Form Maker by WD [CSRF → LFI]# Date: 2019-03-17# Exploit Author: Panagiotis Vagenas# Vendor ...

  3. 【ARTS】01_18_左耳听风-20190311~20190317

    ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...

  4. Linux通配符应用详解

    一.强大的“*” “*”在通配符中是最常用的一种,代表0个.一个或多个字符.在使用中有三种情况,表示三种不同的含义. 1.单独的“*” 这里指的是只有“*”出现的情况,默认为单独的一个,当然连续敲两个 ...

  5. WordPress Plugin Contact Form Builder [CSRF → LFI]

    # Exploit Title: Contact Form Builder [CSRF → LFI]# Date: 2019-03-17# Exploit Author: Panagiotis Vag ...

  6. .net基础学java系列(二)IDE

    上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net ...

  7. echarts、higncharts折线图或柱状图显示数据为0的点

    echarts.higncharts折线图或柱状图只需要后端传到前端一段json数据,接送数据的x轴与y周有对应数据,折线图或柱状图就会渲染出这数据. 比如,x轴表示美每天日期,y轴表示数量.他们的数 ...

  8. html5 基础入门

    html5 基础入门 前言介绍 HTML5草案的前身名为 Web Applications 1.0,于2004年被WHATWG提出,于2007年被W3C接纳,并成立了新的 HTML工作团队. 如果从狭 ...

  9. CF55D Beautiful numbers

    题目链接 题意 定义一个数字\(x\)是\(beautiful\ number\)当且仅当\(x\)可以被其十进制表示下所有非\(0\)位置的数整除. 例如\(24\)是一个\(beautiful\ ...

随机推荐

  1. <c:forEach var="role" items="[entity.Role@d54d4d, entity.Role@1c61868, entity.Role@6c58db, entity.Role@13da8a5]"> list 集合数据转换异常

    <c:forEach var="role" items="[entity.Role@d54d4d, entity.Role@1c61868, entity.Role ...

  2. sqlserver 常见的表名修改

    查看表:exec sp_help 表名 查看列: exec sp_columns 表名 查看列:select * from information_schema.columns where table ...

  3. NIOS_UART

    1.Fifoed avalon UART带缓冲区,使用非常方便,google下载,google上有的技术资料,百度上找不到,以为没有这个事情: 2.两种UART如果想用操作寄存器的方式操作,需要在al ...

  4. OO第四次博客作业

    测试与正确性论证的效果差异及其优缺点 测试是利用测试代码,通过编写测试用例来验证代码是否能正常完成所要求的功能,自动测试相较于正确性论证来说更加的直观,直接测试代码的功能,而正确性论证是在JSF的基础 ...

  5. linux安装杀毒软件

    https://www.cnblogs.com/bingo1024/p/9018212.html

  6. wpf mvvm 实例

    1.程序结构如图所示: 2.Model实现 在Model文件夹下新建业务类StudentModel,代码如下: public class StudentModel : INotifyPropertyC ...

  7. ERROR 1075 (42000): Incorrect table definition; there can be only one auto column and it must be defined as a key

    约束字段为自动增长,被约束的字段必须同时被key约束 没有设置成primary key 时,会报错. 加上primary key 则设置成功.

  8. Web开发(调试方法 F12)

    参考: 参考:MDN 调试HTML 参考:什么是浏览器开发者工具? 参考:检查和编辑页面与样式 工具参考:标记验证服务 工具参考:直接输入验证(直接输入HTML源码进行在线检查) 目录: 1.相关快捷 ...

  9. 冒泡排序(JAVA实现)

    基本思想:在要排序的一组数中,对当前还未排好序的范围内的全部数,自上而下对相邻的两个数依次进行比较和调整,让较大的数往下沉,较小的往上冒. 即:每当两相邻的数比较后发现它们的排序与排序要求相反时,就将 ...

  10. java项目对jar包加密流程,防止反编译

    Java 开发语言以其安全性高.代码优化.跨平台等特性,迅速取代了很多传统高级语言,占据了企业级网络应用开发等诸多领域的霸主地位.特别是近年来大数据.互联网+.云计算技术的不断发展,Java 开发语言 ...