AGC001


A BBQ Easy

贪心。

https://agc001.contest.atcoder.jp/submissions/7856034

B Mysterious Light

很nb这个题

不好做,设\(f(a,b)\)表示边长为\(a,b\),一个角为\(60\)度的平行四边形从\(120\)度的角平分线处出发能走的路程,转移是一个递归,复杂度证明类似\(\gcd\)。

https://agc001.contest.atcoder.jp/submissions/7856746

C Shorten Diameter

每条边新建一个虚点,从每个点(虚实兜星)出发搜不超过\(D\)层(枚举直径中点),能保证真正的直径不超过\(D\),最大的大小即是答案。

https://agc001.contest.atcoder.jp/submissions/7864577

D Arrays and Palindrome

翻题解\(\sqrt{}\)

先说结论,如果\(a\)中奇数不超过\(2\)个,就把它们安排到序列两端,然后输出\(a_1-1,a_2,a_3,\ldots,a_{n-1},a_n+1\)。(此时只有\(a_1\)和\(a_n\)可能是奇数)

可行性画一画就知道了,至于为什么只有这个对,考虑连的边至少要\(n-1\)条,如果一个序列尽量放偶数可以连出\(\lfloor\frac n2\rfloor\)

如果一边有超过\(2\)个奇数那就会少一些边,对\(n\)分奇偶讨论可以得到不可行。

https://agc001.contest.atcoder.jp/submissions/7871320

E BBQ Hard

很久以前写过的顺便写写= =

求一大堆组合数之和,可以化为对每对\(i,j\in[1,n]\)求\((-a_i,-b_i)\)到\((a_j,b_j)\)的方案数

因为对每一对都要做所以直接dp就好了。

https://agc001.contest.atcoder.jp/submissions/3466674

F Wide Swap

最小化\(A\)的字典序相当于最小化\(p_A\)的字典序。(反正对的,关于证明弃疗了

那么从\(p\)上看就是可以交换相邻两个差\(\ge K\)的数

如果有两个数\(i<j,|p_i-p_j|<K\)那么最后\(i\)肯定在\(j\)前面

可以用拓扑序解决,然而边数太多了

每个点\(i\)只要向右边第一个\(a_j>a_i,|a_i-a_j|<K\)的和\(a_j<a_i,|a_i-a_j|<K\)的\(j\)连边即可,可用数归证明后面的边一定会被这两个点连到。

https://agc001.contest.atcoder.jp/submissions/7908880

A*G#C001的更多相关文章

  1. 3D Lut 电影级调色算法 附完整C代码

    在前面的文章,我提到过VSCO Cam 的胶片滤镜算法实现是3d lut. 那么3d lut  到底是个什么东西呢? 或者说它是用来做什么的? 长话短说,3d lut(全称 : 3D Lookup t ...

  2. Storyboards Tutorial 03

    这一节主要介绍segues,static table view cells 和 Add Player screen 以及 a game picker screen. Introducing Segue ...

  3. 文件图标SVG

    ​<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink ...

  4. 通过ipv6访问 g o o g l e

    Google.Youtube.Facebook等均支持IPv6访问,IPv4网络的用户大部分都无法访问,比如Gmail,Google Docs等等各种相关服务.而该类网站大部分均已接入IPv6网络,因 ...

  5. [转]Linux下g++编译与使用静态库(.a)和动态库(.os) (+修正与解释)

    在windows环境下,我们通常在IDE如VS的工程中开发C++项目,对于生成和使用静态库(*.lib)与动态库(*.dll)可能都已经比较熟悉,但是,在linux环境下,则是另一套模式,对应的静态库 ...

  6. CentOS 6.6 升级GCC G++ (当前最新版本为v6.1.0) (完整)

    ---恢复内容开始--- CentOS 6.6 升级GCC G++ (当前最新GCC/G++版本为v6.1.0) 没有便捷方式, yum update....   yum install 或者 添加y ...

  7. Linux deepin 下sublimes配置g++ openGL

    参考 :http://blog.csdn.net/u010129448/article/details/47754623 ubuntu 下gnome只要将代码中deepin-terminal改为gno ...

  8. [翻译svg教程]svg 中的g元素

    svg 中的<g>元素用来组织svg元素.如果一组svg元素被g元素包裹了,你可以通过对g元素进行变换(transform),被g元素包裹的元素也将被变换,就好这些被svg包裹的元素是一个 ...

  9. 软件工程:黄金G点小游戏1.0

    我们要做的是黄金G点小游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值. ...

随机推荐

  1. C# 练习题 利用条件运算符的嵌套来完成分数等级划分

    题目:利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B表示,60分以下的用C表示.1.程序分析:(a>b)?a:b这是条件运算符的基本例子. cla ...

  2. 创建你自己定制的vuejs plugin扩展app的功能

    什么是vuejs plugin插件 vuejs plugin插件是一个向你的app注入新的全局功能的强大但又简约的方式.从概念上来说,vue plugin非常简单,它就是一个包含了install方法的 ...

  3. selenium firefox 内存 速度优化

    selenium firefox 内存 速度优化 2 23 profile = webdriver.FirefoxProfile() 2 24 profile.set_preference(" ...

  4. SQL语句及数据库优化

     1,统一SQL语句的写法 对于以下两句SQL语句,程序员认为是相同的,数据库查询优化器认为是不同的. 所以封装成复用方法,用标准模板来控制. select*from dual  select*Fro ...

  5. Beego 学习笔记12:文件的操作

    文件的操作 1>     此事例操作的是text文件 2>     文件的操作有读取text内容,将内容写入到文件中,删除文件,创建文件 3>     新建一个控制器,名为rwfil ...

  6. Vue学习之品牌案例部分代码小结(二)

    品牌案例的增删查和其他部分效果: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...

  7. 43、css实现镂空半圆环

    <style> .circle { position: relative; box-sizing: border-box; } .big { width: 140px; height: 1 ...

  8. Java 之 Set 接口

    一.Set 概述 java.util.Set 接口继承 collection 接口,它与 Collection 接口中的方法基本一致,并没有对 Collection 接口进行功能上的扩充,只是比 Co ...

  9. android studio学习----构建编译

    项目创建成功后会自动下载Gradle,这个过程特别慢,建议翻墙.下载的Gradle在Windows平台会默认在 C:\Documents and Settings\<用户名>.gradle ...

  10. centos 长久路由表

    由于用命令添加路由条目之后,重启程序后,条目会消失.所以需要用文件管理路由. 1.根据网卡创建路由表文件 vim /etc/sysconfig/network-scripts/route-eth0 2 ...