占个坑慢慢填

A

()[http://codeforces.com/contest/1062/problem/A]
题意:现在有一个长度为n的严格上升正整数序列
每个数的取值在[1, 1000]
现在求一个最长的连续子序列
使得删掉这个序列后 可以推导出原来的序列
求这个序列的最长长度

当然如果a[i] - a[j] == i - j那么a[j +1]到a[i-1]都是可以推导出来的
另外 第二个是2或倒数第二个是999 那么第一个或最后一个可以推导

B

现在有两种操作
mul x:把x乘上任意一个数
sqrt x: 如果x是完全平方数的话 可以把x开方
现在求经过若干次操作能得到的最小x
并求得到这个x的最小步数

设n 的质因数分解为 a1^q1 * a2^q2 * a3^q3 …… * ak^qk
其中ai都是质数
那么mul操作就相当于添加新的质因数 或者把已有的ai
sqrt操作就相当于把所有qi除以2(前提是每个qi都是偶数
显然 如果一个数质因数分解后 每个质数的指数为一 那么就不可能再变小了
显然这些的顺序操作可以交换 只不过操作的数值修改了而已
所以步数最小的情况下 乘法只用做一次
而这一次操作之后就可以不断sqrt使得qi全部为1
那么我们只用知道最大的那个qi
然后求比它大的最小的2的幂次就可以了

C

题意 给一个由0和1组成的序列
取出其中一个数时 ans加上这个数 序列中的其他数也加上这个数
求最大的ans

显然我们要优先取出1
假设ax到ay中有z个一
那么取1的过程中我们每次加的答案是1 2 4 8.....
此处总贡献2^z - 1
当一取完了 剩的就是(y - x + 1) - z个原来是0 现在是2^z - 1的元素了
而它们在取的过程中也会翻倍
此处总贡献为(2^(x-y+1-z) - 1) * (2^z - 1)
最终总贡献(2^(0的个数)) * (2^(1的个数) - 1)

D

题意 已知n
a可以转换为b,当且仅当|a|,|b|<n并且满足|a|是|b|的倍数或|b|是|a|的倍数(这个倍数的绝对值大于1)
本次操作的贡献为这个倍数 并且以后再也不可以做这个操作 即使相反 即b推a 也不行

太菜了并不会QAQ

E

题意 一棵树 n个点 q次询问
每次询问一个区间(长度大于1)
要求在这个区间中删除一个点
使得剩下点在树中lca的深度最大
输出被删点深度和最后那个lca的深度

先说到一个小技巧(其实也不算
一堆点的lca其实就是他们当中dfn最小和最大那两个点的lca
这里枚举一下就可以了

F

太菜了不会QAQ

Codeforces Round #520的更多相关文章

  1. Codeforces Round #520 (Div. 2)

    Codeforces Round #520 (Div. 2) https://codeforces.com/contest/1062 A #include<bits/stdc++.h> u ...

  2. Codeforces Round #520 (Div. 2) E. Company(dfs序判断v是否在u的子树里+lca+线段树)

    https://codeforces.com/contest/1062/problem/E 题意 给一颗树n,然后q个询问,询问编号l~r的点,假设可以删除一个点,使得他们的最近公共祖先深度最大.每次 ...

  3. Codeforces Round #520 (Div. 2) B. Math 唯一分解定理+贪心

    题意:给出一个x 可以做两种操作  ①sqrt(x)  注意必须是完全平方数  ② x*=k  (k为任意数)  问能达到的最小的x是多少 思路: 由题意以及 操作  应该联想到唯一分解定理   经过 ...

  4. CF每日一练 Codeforces Round #520 (Div. 2)

    比赛过程总结:过程中有事就玩手机了,后面打的状态不是很好,A题理解错题意,表明了内心不在状态,B题想法和思路都是完全正确的,但是并没有写出来,因为自己代码能力不强,思路不是特别清晰,把代码后面写乱了, ...

  5. Codeforces Round #520 (Div. 2) Solution

    A. A Prank Solved. 题意: 给出一串数字,每个数字的范围是$[1, 1000]$,并且这个序列是递增的,求最多擦除掉多少个数字,使得别人一看就知道缺的数字是什么. 思路: 显然,如果 ...

  6. Codeforces Round #520 (Div. 2) D. Fun with Integers

    D. Fun with Integers 题目链接:https://codeforc.es/contest/1062/problem/D 题意: 给定一个n,对于任意2<=|a|,|b|< ...

  7. Codeforces Round #520 (Div. 2) C. Banh-mi

    C. Banh-mi time limit per test:1 second memory limit per test:256 megabytes 题目链接:https://codeforc.es ...

  8. Codeforces Round #520 (Div. 2) B. Math

    B. Math time limit per test:1 second memory limit per test:256 megabytes Description: JATC's math te ...

  9. Codeforces Round #520 (Div. 2) A. A Prank

    A. A Prank time limit per test   1 second memory limit per test    256 megabytes 题目链接:https://codefo ...

随机推荐

  1. 01-JavaScript介绍

    JavaScript价绍 1.引言 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) ...

  2. [2019BUAA软工助教]结对编程 - 小结

    [2019BUAA软工助教]结对编程 - 小结 一.评分规则 博客 博客共五十分 序号 要求 分值 1 在文章开头给出Github项目地址 1 2 在开始实现程序之前,在下述PSP表格记录下你估计将在 ...

  3. mybatis配置文件配错

    UG] 2017-10-04 20:04:30,582(137226) --> [http-bio-8082-exec-9] org.springframework.web.servlet.ha ...

  4. Python之操作MySQL数据库

      一.操作步骤 1.导入pymysql模块 2.建立连接(ip.用户名.密码.数据库名.端口号.字符集.(自动提交参数)) 3.建立游标 4.执行sql语句 (4.需要提交的提交) 5.关闭游标 6 ...

  5. 372.Definition of ListNode

    单项列表只能把后一个node中的所有数据copy到当前node再delete后一node. /** * Definition of ListNode * class ListNode { * publ ...

  6. 动态SQL3

    Oracle的批量操作 Oracle不支持VALUES(),(),()这种方式,所以不能用上一节所讲的方法. 有时候业务会包含很多次数据库操作,为了减少数据库连接,我们会选择一次提交大量sql, 这时 ...

  7. js中获取当前项目名等

    实际上通过window.location可以获取很多跟资源路径相关的信息,需要用到的时候直接通过浏览器调试可以查看window.location的一些属性

  8. CDH 6.0.1 集群搭建 「Before install」

    从这一篇文章开始会有三篇文章依次介绍集群搭建 「Before install」 「Process」 「After install」 继上一篇使用 docker 部署单机 CDH 的文章,当我们使用 d ...

  9. shell自定义输入输出 read+echo

    自定义格式输入.输出(244)  输出:echo -e 解释转义字符 -n  回车不换行 \n   新的一行,等同于回车 \t 制表符 \r 回车 \b 回退 baskspace 删除键 演示\n \ ...

  10. 在ASP.NET程序中用程序动态向<head>便签里添加<meta>标签

    在使用ASP.NET框架开发: 若要在Html网页中加入<meta>设置,但想通过程序动态加入: 1.如果是ASP.NET4.0以前版本: 使用HtmlMeta类加入<meta> ...