20190317 A
今天是学长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的更多相关文章
- 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 ...
- 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 ...
- 【ARTS】01_18_左耳听风-20190311~20190317
ARTS: Algrothm: leetcode算法题目 Review: 阅读并且点评一篇英文技术文章 Tip/Techni: 学习一个技术技巧 Share: 分享一篇有观点和思考的技术文章 Algo ...
- Linux通配符应用详解
一.强大的“*” “*”在通配符中是最常用的一种,代表0个.一个或多个字符.在使用中有三种情况,表示三种不同的含义. 1.单独的“*” 这里指的是只有“*”出现的情况,默认为单独的一个,当然连续敲两个 ...
- WordPress Plugin Contact Form Builder [CSRF → LFI]
# Exploit Title: Contact Form Builder [CSRF → LFI]# Date: 2019-03-17# Exploit Author: Panagiotis Vag ...
- .net基础学java系列(二)IDE
上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net ...
- echarts、higncharts折线图或柱状图显示数据为0的点
echarts.higncharts折线图或柱状图只需要后端传到前端一段json数据,接送数据的x轴与y周有对应数据,折线图或柱状图就会渲染出这数据. 比如,x轴表示美每天日期,y轴表示数量.他们的数 ...
- html5 基础入门
html5 基础入门 前言介绍 HTML5草案的前身名为 Web Applications 1.0,于2004年被WHATWG提出,于2007年被W3C接纳,并成立了新的 HTML工作团队. 如果从狭 ...
- CF55D Beautiful numbers
题目链接 题意 定义一个数字\(x\)是\(beautiful\ number\)当且仅当\(x\)可以被其十进制表示下所有非\(0\)位置的数整除. 例如\(24\)是一个\(beautiful\ ...
随机推荐
- 107个JS常用方法(持续更新中)
1.输出语句:document.write(""); 2.JS中的注释为//3.传统的HTML文档顺序是:document->html->(head,body)4.一个 ...
- sublime 将tab替换为4个空格 & 显示空格
preferences -> settings -> 在右侧的json中加入(左侧的默认配置是无法修改的,可以在默认配置中搜到这几个配置) // The number of spaces ...
- ItunesConnect:"Missing Push Notification Entitlement"警告-----以及解决方法
最近开发的cordova应用,要做ios的适配,并且发布版本,但是有一次在发测试版本的时候,突然收到一封邮件警告,原文如下: Missing Push Notification Entitlement ...
- HTML5 页面编辑API之Range对象
在 HTML5 中,一个 Range 对象代表页面上的一段连续区域.通过 Range 对象,可以获取或修改页面上的任何区域.包含获取,修改,删除和替换等操作. 一:获取range对象的值 Range对 ...
- docker的安装和升级
1.删除docker sudo apt-get purge docker.io sudo rm -rf /etc/docker/ sudo apt-get autoremove 2. 安装docker ...
- 迪杰斯特拉(Dijkstra)算法描述及理解
Dijkstra算法是一种计算单源最短无负边路径问题的常用算法之一,时间复杂度为O(n2) 算法描述如下:dis[v]表示s到v的距离,pre[v]为v的前驱结点,用以输出路径,vis[v]表示该点最 ...
- linx下对文件权限设置
语法格式:chmod u+/-rwx,g+/-rwx,o+/-rwx filename 如:1. 给主人添加读权限,并减去执行权限:chmod u+r,u-x filename2. 给所有用户(主人. ...
- gradle入门教程
1,https://gradle.org/ 下载过后解压缩,绿色软件不需要安装. 配置系统环境:GRADLE_HOME设置为解压缩之后的地址,PATH属性追加%GRADLE_HOME%\bin; 2, ...
- C语言第02次作业--循环结构
1.本章学习总结 1.1思维导图 1.2本章学习体会及代码量学习体会 1.2.1学习体会 1- 经过这两周的学习,我深切地体会C语言非常的难(对于我而言).大部分情况都是题目不理解和没有思路,或者编译 ...
- RCNN的流程
步骤一: 找到一个CNN分类模型 步骤二: 对于这个模型修改最后的分类层,为21类,去掉最后一个全连接层 步骤三: 根据选择性搜索提取图像的候选区域(框) 对于候选框修改大小以适应CNN输入,然后得出 ...