今天的比赛很有感触,所以来写一下题解:

T1可以发现一些规律是:面积扩大的速度显然比周长扩大的速度快,然后就可以枚举周长来看能为成的面积,其实最优的情况一定是六边型的情况,通过手膜我们可以发现对于边长是c的六边型,每增加一个周长,也就是增加6次就会变成c+1的六边型,这其中的六次增加每次所围成的面积的增加量分别是c-1,c,c,c,c,c+1,具体的画一下图就可以看出来了!

然而考试的时候我并没有画图,我来大概的说一下考试的思路,其实如果不想看可以直接看下一道T2,可以自动跳过,反正也不是啥正解,而且WA了

考试的时候我就想一定是六边型的情况是最优的,但是我是枚举中间的最长的那个的长度,然后就会发现这其中就是一个多峰函数(注意不严谨,打表发现会出现断崖式下降的情况,反正对拍的时候三分锅了!)然后我就通过找到最优的中间值来求解这个问题,但是我少考虑了一种极其sb的情况就是n==3的时候,会发现,我只会构造类6边形的的图形,所以锅了(此时发现$n==3$锅了的时候是距考试结束还有4分钟的时候,心态已经没了!)

正解就是上面说的,我的代码打的比较鬼畜!

T2 其实自己觉得挺大神的,大佬勿喷!

T2我们把它建出来边就会发现他是一棵内向基环树:就是这样的一棵树

然而在题目的部分测试环境中,会因为其中有不优的边而变成一棵数,那么我们想一下一个点会不会被取的情况:其实对于一棵树来说我们都可以取到,(注意又是不严格的,准确的说是除了叶子节点都能取到)因为要取他只会取他的父亲,但是他本身的数量并不改变,对于树的情况就直接硬搞就可以了(然而我太弱了,考试的时候硬搞都写错了!)

那么对于一棵基环树我们应该咋办能!套路式的断掉一条环上的边,那么我们究竟断哪条边呢?

我们可以对于一棵基环树如果环上的边小于树上的边,那么这个边一定不优,就可以断掉这条边,从而变成一棵树,然后就可以硬搞了,

对于没有这种情况的,就要找环上的边与树上的边的权值差最小的边,然后干掉他!

这样做显然是对的!

至于实现,我们不妨维护每一个点的最大的和次大的儿子,然后直接dfs,就这样就可以了;维护最大和次大的思路还是没有想到!

T3 鸽鸽鸽咕咕咕!

m113的更多相关文章

  1. win10 uwp 车表盘 径向规

    车表盘就是有刻度的圆盘加上针,这个控件可以直观让用户知道当前的速度或其他 看名字不知道是什么,我就放一张图 使用很简单,在Nuget,Radial Gauge 要使用大神做的,简单,在使用我们需要在N ...

  2. hbot固件配置

    又入了一台打印机,171到手,本来之前有更好的,无奈别人下手太快,只剩这台了. 175x135x180的样子. 创客的板,还带16g的闪迪内存卡,看到那会儿感觉赚大了! 拿到的时候不少螺丝松的,有的打 ...

  3. ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点、线、圆,显示提示信息

    ArcGis For Silverlight API,地图显示Gis,绘制点,线,绘制图等--绘制点.线.圆,显示提示信息 /// <summary> /// 绘制界面上的点和线 ///  ...

  4. 动态svg效果

    import React from 'react'; import TweenOne from 'rc-tween-one'; import SvgDrawPlugin from 'rc-tween- ...

  5. 基础的python数据分析

    1. 单行注释 #print("hello word;") 2. 多行注释 ''' print("hello word;") print("hello ...

  6. 2019-9-2-win10-uwp-车表盘-径向规

    title author date CreateTime categories win10 uwp 车表盘 径向规 lindexi 2019-09-02 12:57:38 +0800 2018-2-1 ...

  7. Linux部署.NetCore站点 使用Supervisor进行托管部署

    前言 之前终于在Linux上部署好了.NetCore站点,但是这个站点非常“脆弱”.当我的ssh连接关闭或者我想在当前连接执行其他命令时候就必须关闭dotnet站点的执行程序.这显然不是我想要达到的效 ...

随机推荐

  1. day 23

    目录 面向对象总复习 面向对象总复习 面向过程编程思想: ​ 核心是过程,过程指的是做事情的步骤,即先干什么再干什么. ​ 基于该编程思想编程,就好比一条流水线,一种机械式的思维方式. 面向对象编程思 ...

  2. 网络请求中的cookie与set-Cookie的交互模式的一些问题解析

    首先我们需要思考,很多问题. 1.当很多人访问统一个网服务器,服务器如何来区分不同的用户呢? 答:sessionid,sessionid保证了浏览器和服务器唯一性的通信凭证号码,session保存在服 ...

  3. centos7 安装 mysql5.7 版本(全)

    centos 安装 版本说明 :centos7,mysql5.7 ,不是 centos7 可能有些命令不兼容 安装 mysql-server # 下载并安装 mysql yum wget -i -c ...

  4. Linxu下Yii2的POST请求被拒经历

    Linxu下Yii2的POST提交被拒经历 介于对Yii2的使用,浅谈一下自己的经验,在以往的项目中我使用的框架是Yii1,由于Yii2的出现,所以极力的想使用一下它的新特性. 我的使用环境Linux ...

  5. Qt5教程: (7) 模态/非模态对话框

    模态对话框就是在其没有被关闭之前,用户不能与同一个应用程序的其他窗口进行交互,直到该对话框关闭. 非模态对话框就是在被打开时,用户既可选择和该对话框进行交互,也可以选择同应用程序的其他窗口交互. 1. ...

  6. 三种常见字符编码:ASCII、Unicode和UTF-8

    什么是字符编码? 计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理.最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255( ...

  7. [LUOGU2964] [USACO09NOV]硬币的游戏A Coin Game

    题目描述 Farmer John's cows like to play coin games so FJ has invented with a new two-player coin game c ...

  8. Java项目部署与远程调试两三事

    [开启和进行远程调试]参考https://blog.csdn.net/WSYW126/article/details/748536801.tomcat:配置catalina.sh jpda参数,主要是 ...

  9. TomCat中间件漏洞复现总汇

    TomCat中间件漏洞复现 前言 在渗透测试过程中,遇到php的站相对多一点,所以对apache了解的也多一点.TomCat中间件的站了解的比较少一点,这是自己第一次搭建环境测试漏洞,所以在自己摸索的 ...

  10. python使用input().split()接收多个用户输入

    1.input() 接收多个用户输入需要与split()结合使用 host, port, username, passwd, dbname = input("请输入服务器地址,端口号,用户名 ...