手速场,前三题偏简单,后三题偏难。赛时三题,C题做法麻烦了些导致过得不是很快,但最后打得也不是很差。

A

两只青蛙相邻时,可移动的青蛙一定输:直接把该青蛙挤到边缘即可。

而是否相邻可以直接用二者初始间距的奇偶性来判断,因为显然先后手和间距奇偶性的关系是保持不变的,所以间距为\(0\)时的先后手可以直接根据初始的先后手和间距来判断。

code

B

将所有\(a[i] - b[i]\)预处理出来,问题等价于:可给某个数加\(1\),其他数减1,最终是否可以让所有数都\(>=0\)。

显然最多只能有一个负数,否则其中的某两个负数永远无法协调。

而恰有一个负数时,只有当其他正数中的最小者\(>=\)该负数的绝对值时,才能确保二者最终都\(>=0\)。

按上述方法判断即可。

code

C

构造题硬被我做成了解方程题。。。

我的方法是设起点\(g[1][1]=x\),在代码中设方程利用了\(pair\)键值对\((a,b)\)来维护\(ax+b\)的两个系数,比如对于起点\(g[1][1]=x\),即为\(a=1,b=0\)。而且可以发现,沿着给定路径走到第\(i\)个点时,在前\(i-1\)个点上的数均已用\(ax+b\)表示的情况下,第\(i\)个点上的数也是可以直接用\(ax+b\)确定的。因此层层递推,最终路径上的所有点均可以用\(ax+b\)的形式唯一表示。

最后看每一行,每一列用\(ax+b\)形式表示出的总和,当有任意两个总和对应\(x\)的系数不相等时,\(x\)便可直接解出。若所有总和对应的\(x\)系数均相同,则\(x\)可取任意值(证明略)。

但这个做法实在太麻烦了,导致coding耗费了不少时间qwq...

code

D

一道不太好想的模拟题。

最开始时,第一只稻草人肯定要尽快移动到位置0,让乌鸦开始向右移动。

之后的情况仅需要考虑当前乌鸦的左右两侧最近的两个稻草人即可。

剩下的思路就是尽可能贪心地让乌鸦尽快移动,可以根据乌鸦当前的位置提前调整后面稻草人的位置,具体细节见代码注释(实在是懒得写详细思路了qwq...)

同时有个处理细节:由于可能出现移动\(0.5\)秒的情况,而最后让输出时间的\(2\)倍。为了便于模拟,直接将所有距离相关的量扩大\(2\)倍即可,这样模拟出的时间恰对应原时间的\(2\)倍,且模拟过程中不会出现小数。

code

CF div2 996(A~D)的更多相关文章

  1. UE4从零搭建CF游戏关卡(蓝图篇)

    一 往关卡中放置物体 二 Static Mesh 和 BSP 从今天开始我们要建立一个类似CF游戏的场景,不写一句代码,纯蓝图实现. 三 英语学习 今天早上开会,经理说了一件让我震惊的事情,她说最近大 ...

  2. CF 214B Hometask(想法题)

    题目链接: 传送门 Hometask Time Limit: 2 seconds     Memory Limit: 256 megabytes Description Furik loves mat ...

  3. ProbS CF matlab源代码(二分系统)(原创作品,转载注明出处,谢谢!)

    %ProbS clear all;%% 数据读入与预处理 data = load('E:\network_papers\u1.base');test = load('E:\network_papers ...

  4. CF 213A Game(拓扑排序)

    传送门 Description Furik and Rubik love playing computer games. Furik has recently found a new game tha ...

  5. CF 338E Optimize! (线段树)

    转载请注明出处,谢谢http://blog.csdn.net/ACM_cxlove?viewmode=contents    by---cxlove 出题人题解没看懂...囧. 然后看了下touris ...

  6. CF 983B XOR-pyramid(区间dp,异或)

    CF 983B XOR-pyramid(区间dp,异或) 若有一个长度为m的数组b,定义函数f为: \(f(b) = \begin{cases} b[1] & \quad \text{if } ...

  7. CF 86D 莫队(卡常数)

    CF 86D 莫队(卡常数) D. Powerful array time limit per test 5 seconds memory limit per test 256 megabytes i ...

  8. CF Round #600 (Div 2) 解题报告(A~E)

    CF Round #600 (Div 2) 解题报告(A~E) A:Single Push 采用差分的思想,让\(b-a=c\),然后观察\(c\)序列是不是一个满足要求的序列 #include< ...

  9. 洛谷3月月赛div2 题解(模拟+数学+贪心+数学)

    由于本人太蒻了,div1的没有参加,胡乱写了写div2的代码就赶过来了. T1 苏联人 题目背景 题目名称是吸引你点进来的. 这是一道正常的题,和苏联没有任何关系. 题目描述 你在打 EE Round ...

  10. CF 449D 题解(状压+容斥)

    状压妙啊... 本题的主体思路:状压+容斥原理(或状压+数位dp) 记g[i]表示按位与后结果所有位上至少有i个1的方案数 那么根据容斥原理,ans=g[0]-g[1]+g[2]-g[3]+g[4]. ...

随机推荐

  1. 12万字的java面试题及答案整理(2024新版)

    前言 本来想着给自己放松一下,刷刷博客,慕然回首,final有哪些用法?static都有哪些用法?java的精度算法?java运算逻辑?异常处理?似乎有点模糊了,那就大概看一下Java基础面试题吧.好记 ...

  2. Maxima 使用教程

    说起数学软件,我们很多人脑子里浮现出的第一个就是 matlab,不可否认,matlab 确实是一个优秀的数学软件,但是它需要付费啊(这里不讨论盗版问题).那么有没有一个同样强大但免费的数学软件呢?答案 ...

  3. css画三角形,对角 √ 勾形

    .selected{ border-color: #5FB878; } .selected:after { content: ""; position: absolute; top ...

  4. 100 款支持 .NET 多版本的强大 WPF 控件库

    前言 推荐一款集成了超过100款控件的流行 XAML 控件库,同时提供了一系列常用的 .NET 帮助类-CookPopularUI.它可以简化开发流程,让我们能够更加专注于核心业务逻辑的实现. 让我们 ...

  5. Open-RAG:将开源LLM模型集成为高效RAG模型 | ENMLP'24

    本文是对公开论文的核心提炼,旨在进行学术交流.如有任何侵权问题,请及时联系号主以便删除. 来源:晓飞的算法工程笔记 公众号,转载请注明出处 论文: Open-RAG: Enhanced Retriev ...

  6. NLP语言学基础

    不同的自然语言有不同的语法结构,因此需要对语言数据进行语法解析,才能让机器更准确地学到相应的模式.而语言不同于图像,数据标注工作需要有一定的语言学知识,因此数据的整理也相对更困难.下面以英语为例(别的 ...

  7. 纪念第一次在 Github 上提 ISSUE 得到了老哥的回复

    背景 第一次在 GitHub 上提 ISSUE,提问的内容就是我的上一篇博文 rustlings v6.0 运行时出现 " You are trying to run Rustlings u ...

  8. Java的多线程编程模型5--从AtomicInteger开始(自增长实现)

    AtomicInteger,一个提供原子操作的Integer的类.在Java语言中,++i和i++操作并不是线程安全的,在使用的时候,不可避免的会用到synchronized关键字.而AtomicIn ...

  9. Java线程中断的本质和编程原则

    在历史上,Java试图提供过抢占式限制中断,但问题多多,例如前文介绍的已被废弃的Thread.stop.Thread.suspend和 Thread.resume等.另一方面,出于Java应用代码的健 ...

  10. JDK中的动态代理

    江苏 无锡 缪小东 写到代理模式这章,不得不提到JDK中的动态代理,它是java语言自身对动态代理的支持,类似于JDK中在java.util包中提供Observable类和Observer接口提供对观 ...