传送门 密码:waxadyt T1 暴力 对于任意相邻的两个值 中间能到达的最大高度是固定的 加上头尾,判一下就好了 代码//感谢Th Au K #include<bits/stdc++.h> using namespace std; #define ll long long #define ull unsigned long long #define db double #define N 2000100 #define jd (isdigit(c)) #define gg c=getcha…
2019.8.3 [HZOI]NOIP模拟测试12 A. 斐波那契(fibonacci) 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 找规律 找两个节点的lca,需要能快速根据编号求出父亲的编号. 斐波那契数列:1.2.3.5.8.13.21... 第10对兔子的父节点:斐波那契数列中小于10的最大项为8,所以第10对兔子的父节点为10-8=2. 很容易理解:第5个月时,共有8对兔子(斐波那契第5项),到了第6个月时,共13对兔子.多出的5对兔子,一定是已经成…
毕竟考得太频繁了于是不可能每次考试都写题解.(我解释个什么劲啊又没有人看) 甚至有的题目都没有改掉.跑过来写题解一方面是总结,另一方面也是放松了. NOIP模拟测试36 T1字符 这题我完全懵逼了.就是来教我们打暴力和高级一点的复杂度分析的?? 然而暴力拿走,复杂度分析并没有get到.调和级数是啥?? 度娘: 调和级数(英语:Harmonic series)是一个发散的无穷级数.调和级数是由调和数列各元素相加所得的和.中世纪后期的数学家Oresme证明了所有调和级数都是发散于无穷的.但是调和级数…
[题解在下面] 早上5:50,Gekoo同学来到机房并表态:“打暴力,打暴力就对了,打出来我就赢了.” 我:深以为然. (这是个伏笔) 据说hzoi的人还差两次考试[现在是一次了]就要重新分配机房,不知道我们几个的安排是什么样的,瑟瑟发抖.各种原因作用,心情有些微妙地一遍瞎画一边等着7:10考试开始. 不怎么适合涂鸦的本,不怎么适合涂鸦的笔,不怎么适合涂鸦的心情.考试开始,我摔笔看题. T1上来感觉东西很多很麻烦,过了一遍题发现大概要耐下心来去仔细推一推性质,于是没细想先跳过.然后看T2,受到上…
2019.8.3 [HZOI]NOIP模拟测试12 C. 分组 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 刚看这题觉得很难,于是数据点分治 k只有1和2两种,分别讨论: k=1:根据人类直觉,不难想到一种贪心策略:从前往后扫,若扫到的数能加入当前这段就加入,否则再开一段新的. 于是你就WA了... 题目要求字典序最小,而我们的策略会让当前段尽可能长,所以划分点会靠后.例如:1 2 3 4 5,可以分为{1},{2,3,4},{5}三段,而我们的策略得到的答案…
2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 数据结构学傻的做法: 对每种颜色开动态开点线段树直接维护 操作一区间查询 操作二转化为单点修改 常数有点大,需要稍微卡常. 正解: 对每种颜色开vector存储出现位置(下标),可以发现每种颜色出现位置满足单调性,操作一直接二分找到这段区间,操作二找到两个位置修改. Code: #include <bits/stdc++.h> using names…
NOIP模拟测试17&18 17-T1 给定一个序列,选取其中一个闭区间,使得其中每个元素可以在重新排列后成为一个等比数列的子序列,问区间最长是? 特判比值为1的情况,预处理比值2~1000的幂,存map里.接下来枚举左端点,算出比值,枚举右端点,用平衡树便携判断某个数是否已经在区间内出现过. #include<bits/stdc++.h> using namespace std; inline long long read() { long long x=0,fh=1; char c…
洛谷模拟NOIP考试反思 想法 考了这么简单的试qwq然而依然emmmmmm成绩不好 虽然本次难度应该是大于正常PJ难度的但还是很不理想,离预估分数差很多qwq 于是就有了本反思嘤嘤嘤 比赛链接 原比赛链接(已结束但仍然可提交) 题目解析反思 第一题 超简单(虽然仍然没做对) 第二题 代码扔上来qwq(虽然还是不会) 第三题 代码 第四题 毒瘤极了wodema 据说原来数据是50%那里的,但是出题人z某灵机一动加到了1000orz 于是很多人自然而然地想到了状压DP 普及组是到不了这个难度的,主…
洛谷NOIp热身赛题解 A 最大差值 简单树状数组,维护区间和.区间平方和,方差按照给的公式算就行了 #include<bits/stdc++.h> #define il inline #define vd void #define mod 1000000007 typedef long long ll; namespace IO{ const int maxn=(1<<21)+1; char ibuf[maxn],*iS,*iT,c;int f; inline char getc…
[NOIP提高&洛谷P1024]一元三次方程求解 Description 有形如:ax3+bx2+cx+d=0 这样的一个一元三次方程.给出该方程中各项的系数(a,b,c,d 均为实数),并约定该方程存在三个不同实根(根的范围在-100至100之间),且根与根之差的绝对值>=1.要求由小到大依次在同一行输出这三个实根(根与根之间留有空格),并精确到小数点后2位. 提示:记方程f(x)=0,若存在2个数x1和x2,且x1<x2,f(x1)*f(x2)<0,则在(x1,x2)之间一定…