2019-09-03高一组模拟赛 3 &高二组模拟赛 2 题解

Posted hikigaya

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2019-09-03高一组模拟赛 3 &高二组模拟赛 2 题解相关的知识,希望对你有一定的参考价值。

计算题 1

$$
\beginalign
ans_x
&=\sum_i=1^n (w_i-w_x)^2\\
&=\sum_i=1^n(w_i^2+w_x^2-2w_iw_x)\\
&=\sum_i=1^nw_i^2+nw_x^2-2\sum_i=1^nw_iw_x
\endalign
$$

先在读的时候处理出 $\beginalign\sum_i=1^nw_i^2\endalign$ 和 $\beginalign\sum_i=1^nw_i\endalign$,然后对于每个 $x$ 就可以 $O(1)$ 求答案了。

总时间复杂度 $O(n)$。

计算题 2

首先可以分析性质发现对于任意一段能量石,在不使用能力的情况下无论怎么合并答案都是不变的,于是就可以递推了。

设:

$f[i][0]$ 表示不使用能力时用 $1\sim i$ 号能量石消耗的最小能量。

$f[i][1]$ 表示正在使用能力时用 $1\sim i$ 号能量石消耗的最小能量。

$f[i][2]$ 表示已使用完能力时用 $1\sim i$ 号能量石消耗的最小能量。

则:

$f[i][0]=f[i-1][0]+a_ib_i-1$;

$f[i][1]=\min(f[i-1][0]+ka_ib_i-1,f[i-1][1]+k^2a_ib_i-1)$;

$f[i][2]=\min(f[i-1][2]+a_ib_i-1,f[i-1][1]+ka_ib_i-1)$。

然后就可以递推了。

时间复杂度 $O(n)$。

构造题 1

求出数列 $a$ 的膜 $n$ 意义下的前缀和 $s_0 \dots n$,对于这 $n+1$ 个数,由于只有 $n$ 种取值,由抽屉原理,必有 $2$ 个相等,如果 $s_l=s_r$,那么 $a_l+1\dots r$ 这段数的和就是 $n$ 的倍数。

时间复杂度 $O(n)$。

构造题 2

首先如果在 $i$ 位置 $+A$ 或 $-B$,最后的和就会加 $(n-i+1)\times A$ 或减 $(n-i+1)\times B$。

然后可以发现每个数不是 $+A$ 就是 $-B$,于是可以先假设全部 $+A$,得到 $y=nx+\fracn(n-1)2 \times A$。

然后 $y$ 一定是大于等于 $m$ 的,而大的原因就是部分应该减掉的 $B$ 变成了加 $A$。

而这样要改为 $-B$ 相当于 $-(A+B)$。

于是可以求出 $num=(y-m)/(A+B)$。

对于 $i$ 位置,对 $num$ 的贡献是 $n-i+1$。

然后将 $i$ 从前往后遍历一遍就行了。

时间复杂度 $O(n)$。

数学题 1

三种方法:

1. 打表 $24$ 种即可
2. 暴力搜索即可
3. 找规律即可

数学题 2

由题意,我们可以整理式子,先移项再平方得:

$$
\displaystyle \sqrtx - \sqrtn + \sqrty - \sqrtz = 0
$$

$$
x - \sqrtn =z+y-2\sqrtyz
$$

$$
x-y-z=\sqrtn-2\sqrtzy
$$
要保证等式成立,右边的无理项必须为 $0$。

所以可以得到:
$$
n=4zy
$$
我们可以先把 $n$ 除以 $4$,再从枚举 $n$ 的约数,满足条件就计入答案就可以辣~~

时间复杂度 $O(T\sqrtn)$。

以上是关于2019-09-03高一组模拟赛 3 &高二组模拟赛 2 题解的主要内容,如果未能解决你的问题,请参考以下文章

Mysql高一致高可用方案

CSP-J&S2019初赛游记

005.SQLServer AlwaysOn可用性组高可用简介

工具SaaS的标准定义:三高一低的标准

工具SaaS的标准定义:三高一低的标准

[Linux高并发服务器]模拟实现 ls -l 指令