GDOI 2021 普及组溺水记
Day 1
T1
一看样例:答案不就是 \(\dfrac{\max_{i=1}^n a_i +1}{2}\) 吗?
于是自信打上,拍都不拍。然后就,,对了?
插曲:自己出了一个极端数据,发现 scanf 跑了 \(1.05s\) ,急忙打了一个快读
T2
开始打了一个暴力,就连样例都 T 飞
后来想好像一直向前是最优的,于是打了一个这
然而我没有全排列,炸了。
正解:
#include<bits/stdc++.h>
using namespace std;
const int N=43200;
int T,sx,sy,sz,ex,ey,ez,ans;
inline int A(int x,int y) {
return min(abs(x-y),N-abs(x-y));
}
inline bool check() {
if(A(sx,sy)==A(ex,ey)) {
if(A(sy,sz)==A(ey,ez))return 1;
if(A(sz,sx)==A(ey,ez))return 1;
}
if(A(sx,sz)==A(ex,ey)) {
if(A(sz,sy)==A(ey,ez))return 1;
if(A(sy,sx)==A(ey,ez))return 1;
}
if(A(sy,sz)==A(ex,ey)) {
if(A(sz,sx)==A(ey,ez))return 1;
if(A(sx,sy)==A(ey,ez))return 1;
}
return 0;
}
int main() {
freopen("rescue.in","r",stdin);
freopen("rescue.out","w",stdout);
scanf("%d",&T);
while(T--) {
scanf("%d%d%d%d%d%d",&sx,&sy,&sz,&ex,&ey,&ez);
ans=2100000000;
for(int i=0;i<N;i++) {
if(check()) ans=min(ans,min(i,N-i));
sx=(sx+1)%N,sy=(sy+12)%N,sz=(sz+720)%N;
}
if(ans==2100000000)puts("ERROR");
else printf("%d\n",ans);
}
}
T3
一道神奇的题目,直接贪心找环,然而直接爆零
总结
T1:规律题要打对拍,不然风险太大
T2:考虑要全面
T3:学会放弃
出成绩
膜拜广州二中高手,其实
如果 BF 来估计能 AK
总分 \(100+40+0=140\)
Day 2
T1
想到了 KMP ,然后又想到之前的一道题,于是陷入单个数组的查分无法自拔
赛后:我*,只要移一下项就可以了!!!!!!!!!!!!!!!!!!
Sol:题意变为 \((x_{i+j-1}+z_j)\mod 256=y_{i+j-1}\) 移项后 \((y_{i+j-1}-x_{i+j-1}+256)\mod 256=z_j\)
等量代换后是一个 kmp 模板
#include<bits/stdc++.h>
using namespace std;
const int N=200005;
int n,m,A,B,C,D,E,x[N],y[N],z[N],nxt[N],ans[N],len;
int main() {
freopen("noise.in","r",stdin);
freopen("noise.out","w",stdout);
scanf("%d%d%d%d%d%d%d",&n,&m,&A,&B,&C,&D,&E);
for(int i=1;i<=n;i++)scanf("%d",&y[i]);
for(int i=1;i<=m;i++)scanf("%d",&z[i]);
x[1]=A;
for(int i=2;i<=n;i++)x[i]=((x[i-1]<<B)+(x[i-1]>>C)+D)%E;
for(int i=1;i<=n;i++)y[i]=(y[i]-x[i]+256)%256;
for(int i=2,j=0;i<=m;i++) {
while(j && z[i]^z[j+1])j=nxt[j];
if(z[i]==z[j+1])j++;
nxt[i]=j;
}
for(int i=1,j=0;i<=n;i++) {
while(j && y[i]^z[j+1])j=nxt[j];
if(y[i]==z[j+1])j++;
if(j==m)ans[++len]=i-m+1,j=nxt[j];
}
if(!len)return puts("wrong"),0;
printf("%d\n",len);
for(int i=1;i<=len;i++)printf("%d ",ans[i]);
}
T2
好的,连续三个数异或不为 0:有手就行
多一个数:*
推了半个小时式子的我放弃去打了一个 dfs
T3
直接一个贪心 \(O(n^3)\) 似乎常数太大导致没有 \(50\)
或者贪心错误
总之这个分骗地可以
总结
T1:合并同类项
T2:学会放弃
T3:加个快读
出成绩
巨啊 \(LWT\) 160 ,比 \(SJH\) 多 \(10pts\) 可还行
一个周末就这么度过了,回去不用写作业的欢乐
题外话
DY 宿舍欢乐多
—— GTJ
可能 ZS 只有我们带了电脑
edge://surf
好家伙一个比小恐龙好玩的玩意儿,比赛时都可以腐
监考老师看了我一眼然后若有所思的笑了
耀华实验学校
床是真的矮,一坐下去可能会撞头。。。然后一天 400
伙食也一般。可能是深圳市大城市,房价物价都贵
成群的巨佬
1 年初中, 1 年高中。 22 岁麻省理工博士的科学家。。。
国外各大大学的学霸们。。。
初二报送清华,高一全省第一进省队的。。。
All At All
第一次打省赛,炸的惨
唯一的收获:数位 dp,反悔的贪心,一做就废的推公式技巧,一支笔,一个本子
没了
总而言之:体味了负面情感
这未必是件坏事
丰富我们的人生阅历
把负面情感转换为成长助力,可以获得美好情感
加油吧
GDOI 2021 普及组溺水记的更多相关文章
- GDOI 2022 普及组游记
To LuoguDAY -1 期中考成绩下来了,全无了除了历史 (96) 和生物 (95) 还能看,剩下的-,语文 101.5 ,少错一道选择和断句就 107.5 了,居然比雌兔还低 数学少错一道选择 ...
- NOIP2017普及组翻车记
我就是一个这么个人:平常训练好好的,一到考场就炸. 不管是NOIP还是考试都是这样. 比赛时我脑抽,第二题相减后,居然一点一点地模10. 后来觉得很慢,用近乎一个小时时间,打了另一个方法(不是字典树, ...
- noip2017爆炸记——题解&总结&反省(普及组+提高组)
相关链接: noip2018总结 noip2017是我见过的有史以来最坑爹的一场考试了. 今年北京市考点有一个是我们学校,我还恰好被分到了自己学校(还是自己天天上课的那个教室),于是我同时报了普及提高 ...
- [题解]noip2016普及组题解和心得
[前言] 感觉稍微有些滑稽吧,毕竟每次练的题都是提高组难度的,结果最后的主要任务是普及组抱一个一等奖回来.至于我的分数嘛..还是在你看完题解后写在[后记]里面.废话不多说,开始题解. 第一题可以说的内 ...
- NOIP2017普及组初赛试题及答案
普及组C++语言试题 一.单项选择题(共 20 题,每题 1.5 分,共计 30 分:每题有且仅有一个正确选项) 1.在 8 位二进制补码中,10101011 表示的数是十进制下的( ). A. 43 ...
- 2017.12.10《“剑锋OI”普及组多校联盟系列赛(14)#Sooke#Kornal 的课余时间 》分析报告
报告内容如下 - - [导语] ------ 太晚了,时间也紧,一切尽量从简吧 PS:本文题目来自剑锋OI 所以废话也不多说,进入正题吧,代码直接跟在题目后边儿,主要分析在代码前,次要的就写在代码后面 ...
- NOIP2018普及组模拟赛
向老师给的模拟赛,还没普及组难... 题目在洛谷团队里. 第一试三道水题,我46分钟就打完了,然后就AK了. 第二试一看,除了第二题要思考一段时间之外,还是比较水的,但是我得了Rank倒1,115分. ...
- noip2016普及组题解和心得
前言 感觉稍微有些滑稽吧,毕竟每次练的题都是提高组难度的,结果最后的主要任务是普及组抱一个一等奖回来.至于我的分数嘛..还是在你看完题解后写在[后记]里面.废话不多说,开始题解. (其实这篇博客只有题 ...
- noip2017普及组
过了这么久才来写博客,也是我这么一段时间都很低迷吧.... 老实来说,今年应该是要打提高组的...可还是打了普及组... 其实最猥琐的还是我连普及都写挂了,作为一个学了两年的人,图论,进阶dp都写过的 ...
随机推荐
- Java基础之浅谈继承、多态
一.继承的理解 继承:简单通俗的来讲,继承就是一个类继承另一个类,通常用extends表示继承. 继承的类叫子类,被继承的类叫父类. 子类可以使用父类的变量和方法,同时也可以重写父类的方法. 在Jav ...
- matplotlib---Annotation标注
import numpy as np import matplotlib.pyplot as plt x = np.linspace(-3, 3, 50) y = 2 * x + 1 plt.figu ...
- Spring-注入方式(基于xml方式)
1.基于xml方式创建对象 <!--配置User类对象的创建 --> <bean id="user" class="com.at.spring5.Use ...
- oracle sqlplus不支持上下键查看历史记录问题
我们需要安装rlwrap软件 系统采样: [root@rac-2 src]# su - oracle Last login: Fri Mar 18 23:36:25 CST 2022 on pts/0 ...
- k8s和Docker
Docker是一个开源的应用容器引擎k8s是一个开源的容器集群管理系统这里我尽量用比较浅显的方式来说明k8s系统 一.k8s是如何管理的节点的呢:1.k8s 分master和node 2.master ...
- Quartz 使用记录
Quartz 使用记录 官网 https://www.quartz-scheduler.org/ 参考文档 Quartz 2.3.0 什么是 Quartz? 官方描述: Quartz is a ric ...
- RPC及Dubbo和ZooKeeper的安装
RPC及Dubbo和ZooKeeper的安装 RPC 通信有两种方式:HTTP(无状态协议,通信协议),RPC(远程过程调用) 它两的本质没有区别,只是功能有点不一样 官方解释: RPC是指远程过程调 ...
- 7.Jenkins进阶之流水线pipeline语法入门学习(2)
目录一览: (2) Declarative Pipeline Syntax 2.1) Sections - 章节 2.2) Directives - 指令 2.3) Sequential Stages ...
- 使用Harr特征的级联分类器实现目标检测
前言 最近在学习人脸的目标检测任务时,用了Haar人脸检测算法,这个算法实现起来太简洁了,读入个.xml,调用函数就能用.但是深入了解我发现这个算法原理很复杂,也很优秀.究其根源,于是我找了好些篇相 ...
- 使用Camera API https://developer.mozilla.org/zh-CN/docs/Web/Guide/API/Camera
使用Camera API 在本文章中 获取到所拍摄照片的引用 在网页中展示图片 完整的示例代码 HTML页面: JavaScript文件: 浏览器兼容性 通过Camera API,你可以使用手机的摄像 ...