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\) 个图 ...
随机推荐
- Python爬虫快速上手教程
1 这个是什么 整理Python中requests常用的API 2 代码 from bs4 import BeautifulSoup import requests import re ...
- 玩转Spring全家桶笔记 03 Spring的JDBC操作以及SQL批处理的实现
1 spring-jdbc core JdbcTemplate 等相关核心接口和类(核心) datesource 数据源相关的辅助类(内嵌数据源的初始化) object 将基本的JDBC操作封装成对象 ...
- ubuntu 18.04安装RTX 2060 显卡驱动
第一:安装ppa的显卡驱动源 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update 第二:检查显卡和推荐驱动 ubuntu- ...
- JavaScript_day02
10.随机数 随机数一般和数组组合使用. 生成随机数:使用Math.random()函数,生成的随机数0-1.一般乘以10^n扩大随机数范围. Math.round()函数和parseInt()函数. ...
- JAVA - 普通类读取WEB-INF里面配置文件
服务器:Tomcat 9 注意问题:配置文件应该放入Tomcat的正式工程目录中测试. 可用代码: package com.daoen.rtis.test; import java.io.FileRe ...
- UNTIY Canvas
一.Canvas 组件 Render Mode(渲染模式) (1)Screen Space-Overlay:2D UI,始终显示在屏幕最前方,适合制作HP,MP等(相当于GUI) (2)Screen ...
- 交易开拓者旗舰版(TB旗舰版)软件升级中如何迁移用户数据
方法一: 1.导出工作区,桌面和系统设置.操作:文件->导入和导出 2.导出公式.操作:tb公式->公式导入导出. 3.拷贝工作室文件.目录在:user\tb用户名\Workroom 4. ...
- flask-sqlalchemy用法详解
一. 安装 $ pip install flask-sqlalchemy 二. 配置 配置选项列表 : 选项 说明 SQLALCHEMY_DATABASE_URI 用于连接的数据库 URI .例如:s ...
- c# 日期和时间System.DateTime
- php基本数据类型
trim()函数,用于去除字符串首尾空格和特殊字符返回的是去掉的空格和特殊字符后的字符串 string trim(string str [,string charlist]); str 要操作的字符串 ...