[ G D K O I 2021 ] 普 及 组 D a y 3 总 结


时间安排和昨天的GDKOI2021 Day2一样.

早上四个小时的快乐码题时间,然鹅我打了半小时的表
然后就是下午的题目讲解和凸包讲座.


题目讲解


T1


相似三角形的判定应该大家都知道,

一开始我还是用勾股来求的,结果打完后发现好像用欧氏距离简单的多…

关于我怎么用勾股来求边长的:

虚点是为了求边长而设定的辅助点,而实线是所求三角形的边.虚线是同辅助点建立的辅助边,由于是成

90

°

90°

90°的,所以可以用沟谷进行一个边的求长.因为知道了三角形三个点的位置,所以可以很容易地推导出符合这个要求的点,知道了辅助点和三角形的点的位置,又可以求出两条辅助边发的长度,然后就是勾股了.


T2



这题的思路很简单.由于成绩可能是任何实数,对于最优情况下就赋予99.99的成绩,比他高的(

r

1

r-1

r−1个)人就赋予

100分的成绩,比他低的就赋予0分的"好成绩".

对于最差的情况下,直接赋予最低的成绩,

0.如果没有人比他高,那么大家都是

0分,有比他高的都是100分,其他人都是  0分.


T3


出现了,Day 1讲过的数论
化简过程:

\begin{equation}
\sum_{k=1}^{n} \sum_{i \mid k} \sum_{j \mid i} \lambda(i) \lambda(j)=\sum_{k=1}^{n} \sum_{i \mid k} \lambda(i) \sum_{j \mid i} \lambda(j)
\end{equation}

我们设

\begin{equation}
\operatorname{sum}(x)=\sum_{i \mid x} \lambda(i)
\end{equation}

如果我们通过枚举

i
,相当于贡献就是

\begin{equation}
\lambda(i) * \operatorname{sum}(i)
\end{equation}

,显然在 1~n

内的每一个i的倍数都有一次贡献。这样可以拿到

60分的部分分。

如果仔细分析

\begin{equation}
\operatorname{sum}(x)
\end{equation}

的值可以发现,
如果

x
为完全平方数,

\begin{equation}
\operatorname{sum}(x)=1
\end{equation}

,否则

\begin{equation}
\operatorname{sum}(x)=0
\end{equation}

证明:分解

x的质因数,使

\begin{equation}
x=p_{1}^{a 1} * p_{1}^{a 1}
\end{equation}


显然每个指数

i从0到 a;取值的积就是

x
的每一个因数。
假设存在一个 α_k是奇数,那么这个质数的指数可以选择

0
到 a_k

,奇数个数刚好等于偶数个数,说明每一种选择都恰好有一种选择与它的指数和奇偶性想法,即\operatorname{sum}(x)=0
如果 a_i​全为偶数,即为完全平方数,那么
\operatorname{sum}(x)=1。由前面的对称性可以知道,如果将某个质数的指数减小

2,sum值不变。所有完全平方数的sum值等于
\operatorname{sum}(x)=1。

然后继续化简公式
\sum_{k=1}^{n} \sum_{i \mid k} \lambda(i) * \operatorname{sum}(i)
因为只有i是完全平方数时,
\operatorname{sum}(i)=1,而此时
\lambda(i)=1。那么答案就是每个完全平方数

x在

1

n
内的倍数的和。

\begin{equation}
\sum_{i^{2}<n} \frac{n}{i^{2}}
\end{equation}


T4


这道题有个很有意思的地方,就是序列前

i

i

i个元素的和要大于后

n

i

+

1

n-i+1

n−i+1个.这里由于

i

i

i是最小等于

1

1

1的,所以容易得出该要求的简化证明:该序列的第一个元素大于等于该序列其他元素之和才为题目定义的"好数列"
但如果就是不断地生成一个符合题目基本要求的序列,再去验证该序列是否为"好序列",那么通常会超出时限.于是我们就想到一个简化的思想

分析:
首先我们发现,如果某个长度为

i

i

i的前缀与长度为

i

i

i的后缀有重叠部分,那
么这个限制等价于长度为

n

i

n-i

n−i的前缀。也就是说如果

n

n

n是偶数,那么只需要
考虑前

n

/

2

n/2

n/2位满足条件即可;如果

n

n

n是奇数,也只需考虑

n

/

2

n/2

n/2位即可,中间
那一位可以随便填。
考虑一个计数

D

P

DP

DP,以

f

[

i

]

[

j

]

f[i][j]

f[i][j]来表示对于前

i

i

i位的和比后

i

i

i位大

j

j

j的方案数.
那么可以得出:

f

[

i

]

[

j

]

=

k

=

m

a

x

(

j

n

,

0

)

j

+

n

f

[

i

]

[

k

]

(

n

+

1

j

k

)

f[i][j]=\sum_{k=max(j-n,0)}^{j+n}f[i][k]*(n+1- \left | j-k \right |)

f[i][j]=k=max(j−n,0)∑j+n​f[i][k]∗(n+1−∣j−k∣)
时间复杂度为

O

(

n

4

)

O(n^4)

O(n4)


讲座

凸包


个人感想

这次

G

D

K

O

I

2021

GDKOI2021

GDKOI2021真的是教给了我很多,不论是讲堂还是讲题部分,都是有很多值得学习了了解的知识点的知识面的.
同今天解压密码一样,

G

D

K

O

I

GDKOI

GDKOI普及组,明年见

[GDKOI2021] 普及组 Day3 总结 && 题解的更多相关文章

  1. [GDKOI2021] 普及组 Day2 总结

    [ G D K O I 2021 ] 普 及 组 D a y 2 总 结 [GDKOI2021] 普及组 Day2 总结 [GDKOI2021]普及组Day2总结 时间安排和昨天的GDKOI2021 ...

  2. [GDKOI2021] 普及组 Day1 总结

    [ G D K O I 2021 ] 普 及 组 D a y 1 总 结 [GDKOI2021] 普及组 Day1 总结 [GDKOI2021]普及组Day1总结 长达3天的快乐GDKOI2021普及 ...

  3. NOIP2018初赛普及组原题&题解

    NOIP2018初赛普及组原题&题解 目录 NOIP2018初赛普及组原题&题解 原题&答案 题解 单项选择题 第$1$题 第$2$题 第$3$题 第$4$题 第$5$题 第$ ...

  4. noip2008普及组3题题解-rLq

    (第一次写题解,随意喷) (只是前一天的作业哈) (先凑个数) 题目描述 上体育课的时候,小蛮的老师经常带着同学们一起做游戏.这次,老师带着同学们一起做传球游戏.游戏规则是这样的:n个同学站成一个圆圈 ...

  5. 【总结】2022GDOI普及组试题与题解(缺两天的T4)

    标签 2022 广东省选普及组 GDOI 试题 前往Luogu下载 Luogu下载:This Day1题解 T1 邹忌讽齐王纳谏 打卡题,建议模拟 建议使用map,时间复杂度为\(O(nlogn)\) ...

  6. noip2008普及组4题题解-rLq

    (啊啊啊终于补到了今天的作业了) 本题地址:http://www.luogu.org/problem/show?pid=1058 题目描述 小渊是个聪明的孩子,他经常会给周围的小朋友们将写自己认为有趣 ...

  7. [题解]noip2016普及组题解和心得

    [前言] 感觉稍微有些滑稽吧,毕竟每次练的题都是提高组难度的,结果最后的主要任务是普及组抱一个一等奖回来.至于我的分数嘛..还是在你看完题解后写在[后记]里面.废话不多说,开始题解. 第一题可以说的内 ...

  8. NOIP2008普及组题解

    NOIP2008普及组题解 从我在其他站的博客直接搬过来的 posted @ 2016-04-16 01:11 然后我又搬回博客园了233333 posted @ 2016-06-05 19:19 T ...

  9. [题解]NOIP2018(普及组)T1标题统计(title)

    NOIP2018(普及组)T1标题统计(title) 题解 [代码(AC)] #include <iostream> #include <cstdio> #include &l ...

随机推荐

  1. github & webhooks

    github & webhooks git auto commit bash shell script https://developer.github.com/webhooks/ POST ...

  2. js function call hacker

    js function call hacker you don't know javascript function https://developer.mozilla.org/en-US/docs/ ...

  3. taro error

    taro error index.json 中没有申明 "component: true" 或其他异常 https://blog.csdn.net/qq_35629609/arti ...

  4. 别再人云亦云了!!!你真的搞懂了RDD、DF、DS的区别吗?

    几年前,包括最近,我看了各种书籍.教程.官网.但是真正能够把RDD.DataFrame.DataSet解释得清楚一点的.论据多一点少之又少,甚至有的人号称Spark专家,但在这一块根本说不清楚.还有国 ...

  5. UDP编程详解

    目录 报文格式 通信过程 UDP客户端流程 UDP客户端编码 UDP服务器流程 UDP服务器编码 参考文献 UDP与TCP的不同之处是:他的通信不需要建立连接的过程.中文名称用户数据报协议.时OSI参 ...

  6. TERSUS无代码开发(笔记07)-简单实例手机端后台逻辑开发

    提交申请逻辑开发 1.添加父级对象引用(从父级对象中获取前端输入框的值) 1.设计数据库表(表名和字段名称不能用中文) 2.设计置数据库主键(可设联合主键) 3.传值形成数据实列处理 4.服务器端处理 ...

  7. JS输出为[object object]

    问题描述:在控制台打印时应输出对象,但是却输出[object object] 解决办法:先将数据转换为json格式,然后再转换为json对象 JSON.parse(JSON.stringify(use ...

  8. Python爬虫系统化学习(3)

    一般来说当我们爬取网页的整个源代码后,是需要对网页进行解析的. 正常的解析方法有三种 ①:正则匹配解析 ②:BeatuifulSoup解析 ③:lxml解析 正则匹配解析: 在之前的学习中,我们学习过 ...

  9. 正则表达式匹配${key}并在Java中使用

    1.正则表达式匹配${key} \$\{([a-z]+)\} 能够匹配字符串中以${key}形式的文本(其中key为小写应为字母) .*\$\{([a-z]+)\}.* 可以用来检测文本中是否有${k ...

  10. 使用Docker快速搭建Nginx+PHP-FPM+MySQL+phpMyAdmin环境

    一.概述 环境介绍 操作系统:centos 7.6 docker版本:19.03.8 ip地址:192.168.31.34 本文将介绍如何使用单机部署Nginx+PHP-FPM环境 二.Nginx+P ...