yyb博客的几道神仙题
T5
题意:
给你一个\(n\times n\)的网格,开始有\(m\)个被涂成黑色的格子,如果存在三个格子\((x,y)\),\((y,z)\),\((z,x)\)满足\((x,y)\),\((y,z)\)均为黑格子且\((z,x)\)为白格子,那么就将\((z,x)\)涂黑,问最后会有多少个被涂黑的格子。
题解
关键词:构造 染色(hint: 不是原矩阵的染色)
T2
给定一个塔状结构,从上往下的第i层有2i−1个位置。
在最底层有一个(2n−1)的排列,然后往上的每一个格子都等于正下方,左下方,右下方三个数中第二大的那个。
显然已知顶端的数,构造一个满足条件的排列。无解输出"No"
把要的数放在中间,然后让它到达上一层的个数最多,剩下的空位置按照顺序搞就行了。
。。。。(x + 2)(x - 1)(x)(x + 1)(x - 2)。。。。
T3
C - Rabbit Exercise
转自yyb的blog
数轴上有n个点,一开始第i个点在位置ai。
现在按照次序进行m次操作,每次给定一个x,
然后从x−1和x+1两个点中等概率随机选择一个点,将x的坐标关于这个点对称。
这m次操作重复进行K轮,求最终每个点所在位置的期望。
无论怎么样任何一个点每次操作一定是变成\(2a_{x−1}(a_{x+1})−a_x\)
设fx表示x这个点当前的期望,假设当前点要进行依次变换,那么期望为\(\frac{1}{2}((2f_{x−1}−f_x)+(2f_{x+1}−f_x))=f_x+1+f_{x−1}−f_x\)。
好的,然后进行K轮就不会了。怎么办呢?(当然是点开题解了啊)。闲着无聊来差分一下(菊开:差分是人类智慧),
设\(d_i=f_i−f_{i−1}\),那么执行完一次操作之后:\(di=(f_{i−1}+f_{i+1}−f_i)−f_{i−1}=f_{i+1}−f_i\),\(d_{i+1}=f_{i+1}−(f_{i−1}+f_{i+1}−f_i)=f_i−f_{i−1}\)。
好啊,一次操作等价于交换\(d_i,d_{i+1}\),那么我们只要记录一下做完一轮操作之后di都到哪里去了,然后就可以倍增了。
T4
T2的逆向版
给定一个序列 2*n + 1项 还是第二大(中位数)向上传递
求最后顶端那个点的值
中位数套路操作 -> 01转换
二分一个值 序列中的每个数大于等于它为1 小于它的为0
如果有两个连续的0或1 那他们可以直接向上传递(不信你手玩一下)
位置偏中间的那组必然能撑到最后(因为到后来就是直接剪裁两端的值了,不信你手玩一下)
如果没有连续?你手玩一下就知道奇数位都一样,并且他们能撑到最后
【BZOJ5285】[HNOI2018]寻宝游戏
那么把or写成0, and写成1
那么,如果当前操作数前面的运算符和某一位上相同,那么就等价于没有进行操作,否则直接知道了运算结果。
假如只有一个二进制位的话,那么就是一个长度为n的01串x,和一个长度为n的操作串opt。设最后一位为最高位。
如果最终的结果是1,那么意味着\(x>opt\),否则最终结果为0。可以手玩验证。
[ZJOI2018]迷宫
不会不会自闭了
yyb博客的几道神仙题的更多相关文章
- CSDN博客添加量子恒道统计代码步骤
CSDN博客添加量子恒道统计代码步骤. 1. 去量子恒道网站统计 注册账户: 2. 添加已有的CSDN博客地址: 3. 添加博客后恒道代码里面会给你一个JavaScript脚本,记下里面的一串数字: ...
- 『编程题全队』Beta 阶段冲刺博客集合
『编程题全队』Beta 阶段冲刺博客集合 »敏捷冲刺 日期:2018.5.23 博客连接:『编程题全队』Scrum 冲刺博客 »Day1 日期:2018.5.23 博客连接:『编程题全队』Beta 阶 ...
- 『编程题全队』Alpha 阶段冲刺博客集合
『编程题全队』Alpha 阶段冲刺博客集合 »Day1 2018年4月19日 博客连接:『编程题全队』Alpha 阶段冲刺博客Day1 »Day2 2018年4月20日 博客连接:『编程题全队』Alp ...
- 2018上C语言程序设计(高级)博客作业样例
要求一(20分) 完成PTA中题目集名为<usth-C语言高级-第1次作业>中的所有题目. 要求二 PTA作业的总结(20分+30分) 将PTA第1次作业作业中以下2道题的解题思路按照规定 ...
- DS博客作业03——栈和队列
1.本周学习总结 谈谈你对栈和队列结构的认识及学习体会. 栈和队列的本质就是线性表.所以,相应的栈跟队列都有两种存储结构:顺序存储结构.链式存储结构. 栈的特点是后进先出,根据栈时进时出的规则,出栈的 ...
- 知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET
知道创宇爬虫题--代码持续更新中 - littlethunder的专栏 - 博客频道 - CSDN.NET undefined 公司介绍 - 数人科技 undefined
- 好像leeceode题目我的博客太长了,需要重新建立一个. leecode刷题第二个
376. Wiggle Subsequence 自己没想出来,看了别人的分析. 主要是要分析出升序降序只跟临近的2个决定.虽然直觉上不是这样. 455. 分发饼干 ...
- 『编程题全队』Alpha 阶段冲刺博客Day8
1.每日站立式会议 1.会议照片 2.昨天已完成的工作统计 孙志威: 1.修复了看板任务框拖拽时候位置不够精确的问题 2.向个人界面下添加了工具栏 3.个人界面下添加了任务框测试 孙慧君: 1.个人任 ...
- 『编程题全队』Alpha 阶段冲刺博客Day1
『编程题全队』Alpha 阶段冲刺博客Day1 一.Alpha 阶段全组总任务 二.各个成员在 Alpha 阶段认领的任务 三.明日各个成员的任务安排 孙志威:实现基本的网络连接, 完成燃尽图模块 孙 ...
随机推荐
- 学习安卓开发[3] - 使用RecyclerView显示列表
在上一篇学习安卓开发[2] - 在Activity中托管Fragment中了解了使用Fragment的好处和方法,本次记录的是在进行列表展示时RecyclerView的使用. RecyclerView ...
- SpringBoot 配置定时任务
SpringBoot启用定时任务,其内部集成了成熟的框架,因此我们可以很简单的使用它. 开启定时任务 @SpringBootApplication //设置扫描的组件的包 @ComponentScan ...
- 或许,挂掉的点总是出人意料(hw其实蛮有好感的公司)
1:问了有没有考研的打算,为什么: ` 实验室指导自己的两个学长, 他们两个都是不考研党派,当然两个学长本科都进入了不错的公司hw,xm,耳濡目染就自己也就不想去考研了: 跟一些已经工作的程序员聊天, ...
- windows下php7.1安装redis扩展以及redis测试使用全过程
最近做项目,需要用到redis相关知识.在Linux下,redis扩展安装起来很容易,但windows下还是会出问题的.因此,特此记下自己实践安装的整个过程,以方便后来人. 一,php中redis扩展 ...
- 【PAT】A1002 A+B for Polynomials
仅有两个要注意的点: 如果系数为0,则不输出,所以输入结束以后要先遍历确定系数不为零的项的个数 题目最后一句,精确到小数点后一位,如果这里忽略了,会导致样例1,3,4,5都不能通过
- MySQL 数据表创建及管理
use stuinfo; -- 指定当前数据库 CREATE table if not exists student1( -- 创建数据表student1 sNo ) not NULL, sName ...
- isinstance_issubclass
isinstance和issubclass分别是检验是不是对象是不是类的实例化,和子类是不是这个父类的子类 class A:pass class B(A):pass a = A() print(isi ...
- python 词云学习
词云入门 三步曲 数据获取:使用爬虫在相关网站上获取文本内容 数据清洗:按一定格式对文本数据进行清洗和提取(文本分类,贴标签) 数据呈现:多维度呈现和解读数据(计算,做表,画图) 一 模块的安装 pi ...
- ios和安卓H5交互桥接
ios交互 demo1(摘自网络) <!doctype html> <html> <head> <meta charset="UTF-8" ...
- Spring事件和监听器
Application下抽象子类ApplicationContextEvent的下面有4个已经实现好的事件 ContextClosedEvent(容器关闭时) ContextRefreshedEven ...