Educational Codeforces Round 64 部分题解
Educational Codeforces Round 64 部分题解
不更了不更了
CF1156D 0-1-Tree
有一棵树,边权都是0或1。定义点对\(x,y(x\neq y)\)合法当且仅当树上\(x\)到\(y\)的路径权值是一段0接一段1。求合法点对数量。
直接点分治
我是傻逼居然还写了50min。。。
https://codeforces.com/contest/1156/submission/53661175
CF1156E Special Segments of Permutation
有一个排列,求满足\(l\leq r,p_l+p_r=\max_{i=l}^rp_i\)的数对\(l,r\)数量。
枚举最大值的位置,那么\(l,r\)有一个初步的范围就是这个最大值左边第一个大于它的位置+1和右边第一个大于它的位置-1,可以用单调栈处理。
然后在小的那一边中枚举\(p\),在另一边查找是否有合法的。
考虑将序列建树的过程:将序列最大值拿出来,左右的序列分别建树作为两个儿子。
暴力枚举的次数实际上是\(\sum \min(siz[ls],siz[rs])\),即启发式合并的复杂度。
https://codeforces.com/contest/1156/submission/53653009
CF1156F Card Bag
有一堆卡,等概率随机拿出来一个,如果这不是第一次拿则将这张牌的大小与上一张牌大小比较,如果这张牌更大则重复这个过程,更小则你输了,相等则你赢了。最后没有牌你就输了。求获胜概率。
如果赢了那么拿出来的牌是一个递增的序列,最后一个数重复两次。
设\(f[i][j]\)表示抽了\(i\)张卡且没有重复,最后一张大小是\(j\)的概率。直接dp就行了。
https://codeforces.com/contest/1156/submission/53653958
CF1156G Optimizer
有一种辣鸡语言
这个语言的变量名最多4个字符,命名规则是第一个字符是字母,其他字符是字母或者数字。
这个语言的语句只有两种,每一种占一行
- 赋值 形如
<lvalue>=<rvalue>,如yyb=juju - 还是赋值 形如
<lvalue>=<arg1><op><arg2>,其中<op>是一种运算符,有四种,分别是$,#,&,^。如yyb=ak$ioi
比如这是一种合法的程序:
c=aa#bb
d12=c
res=c^d12
tmp=aa$c
一个程序的返回值被定义为程序结束时变量res的值
你可以认为这个程序初始所有变量都有一个随机的值。而运算符<op>所代表的运算是不确定的。定义两个程序是等效的,当且仅当对于每一种相同初始值以及计算规则,这两个程序的返回值相等。
现在萌新写了个程序,你想帮他压行,即写一个与萌新的程序等效的程序,使得你写的程序行数最小。
输出最小行数以及你写的程序。
先来看看有哪些东西可以被压掉
- 对
res没有影响的可以压掉 - 被重复计算的可以压掉
比如说a=b^c;d=b^c
那么计算d显然没有用 - 没了
1可以通过实现solve(x,n)表示计算变量x在n语句以前的值来实现不计算没有用的
2可以通过哈希在solve的时候判掉
那么就是一个简单的大模拟了
https://codeforces.com/contest/1156/submission/53659024
Educational Codeforces Round 64 部分题解的更多相关文章
- Educational Codeforces Round 64部分题解
Educational Codeforces Round 64部分题解 A 题目大意:给定三角形(高等于低的等腰),正方形,圆,在满足其高,边长,半径最大(保证在上一个图形的内部)的前提下. 判断交点 ...
- Educational Codeforces Round 64 (Rated for Div. 2)题解
Educational Codeforces Round 64 (Rated for Div. 2)题解 题目链接 A. Inscribed Figures 水题,但是坑了很多人.需要注意以下就是正方 ...
- Educational Codeforces Round 64(ECR64)
Educational Codeforces Round 64 CodeForces 1156A 题意:1代表圆,2代表正三角形,3代表正方形.给一个只含1,2,3的数列a,ai+1内接在ai内,求总 ...
- Educational Codeforces Round 63部分题解
Educational Codeforces Round 63 A 题目大意就不写了. 挺简单的,若果字符本来就单调不降,那么就不需要修改 否则找到第一次下降的位置和前面的换就好了. #include ...
- Educational Codeforces Round 64 (Rated for Div. 2) A,B,C,D,E,F
比赛链接: https://codeforces.com/contest/1156 A. Inscribed Figures 题意: 给出$n(2\leq n\leq 100)$个数,只含有1,2,3 ...
- Educational Codeforces Round 64 -C(二分)
题目链接:https://codeforces.com/contest/1156/problem/C 题意:给出n个数和整形数z,定义一对数为差>=z的数,且每个数最多和一个数组成对,求最多有多 ...
- Educational Codeforces Round 64 -B(贪心)
题目链接:https://codeforces.com/contest/1156/problem/B 题意:给一段字符串,通过变换顺序使得该字符串不包含为位置上相邻且在字母表上也相邻的情况,并输出. ...
- Educational Codeforces Round 64 (Rated for Div. 2) (线段树二分)
题目:http://codeforces.com/contest/1156/problem/E 题意:给你1-n n个数,然后求有多少个区间[l,r] 满足 a[l]+a[r]=max([l, ...
- Educational Codeforces Round 64 选做
感觉这场比赛题目质量挺高(A 全场最佳),难度也不小.虽然 unr 后就懒得打了. A. Inscribed Figures 题意 给你若干个图形,每个图形为三角形.圆形或正方形,第 \(i\) 个图 ...
随机推荐
- webapi初学项目(增删改查),webapi增删
wenapi做了一个从数据库增删改查的项目 webapi: 1.创建项目:visual C# —> ASP.NET MVC 4 web应用程序 模板—>web api; 2.注册路由: 路 ...
- pytorch learning rate decay
关于learning rate decay的问题,pytorch 0.2以上的版本已经提供了torch.optim.lr_scheduler的一些函数来解决这个问题. 我在迭代的时候使用的是下面的方法 ...
- VsCode中好用的git源代码管理插件GitLens
1.在插件tab搜索GitLens 2.安装成功后将光标移至代码行即会显示代码编写者 3.在VsCode左侧菜单栏,点击GitLens图标即可查看History,也可以查看全部的日志 4.查看上下pu ...
- DevExtreme学习笔记(一) DataGrid中数据提交注意事项
1.数据提交的{}数据需转化json格式 syncPost('/controller/action', { values: JSON.stringify({d:x}) }, function (res ...
- 实现负载均衡的小demo
首先我们先来了解负载均衡: 负载均衡是为了缓解网络压力的,服务器端进行扩容的重要手段 实现有两种方式:硬件F5 . 软件nginx.Dubbo 为了实现负载均衡的原理,我们基于以下两篇随笔继 ...
- 社交类app开发( 仿陌陌 客户端+服务器端)
一.开发所需要的技术 手机端需要Android/iOS开发人员,服务器端需要php/数据库开发人员, 如果再做网页版的话,WEB开发也是要的. 即时通讯 GPS地图 群聊 差不多 对 http so ...
- 【JUC】5.线程池—Executor
创建线程池可以分为三种方式: 1. 通过ThreadPoolExecutor的构造方法,创建ThreadPoolExecutor的对象,即一个线程池对象: 此构造方法,一共7个参数,5个必须参数,2个 ...
- python之文件的相关操作
一..文件操作的函数 open("文件名(路径)" ,mode = "模式" , encoding="字符集") 注:文件路径: (1)绝对 ...
- 基于Java+Selenium的WebUI自动化测试框架(十二)-----读取Excel文件(POI)(2)
上一篇我们讲了怎么利用Java的反射机制,将Excel的读取到的数据,赋值给我们构造函数中定义的变量. 接下来就简单了,我们将实际实现这个读取的简单过程.来看下面一段代码. private stati ...
- java基础(10)---leetcode的String、数组以及集合的一些使用
整数 一.整数反转_7 /* 12345 变成 54321 */ public class 整数反转_7 { public static void main(String[] args){ int x ...