Contest Info


Practice Link

Solved A B C D E F G
4/7 O O O Ø - - -
  • O 在比赛中通过
  • Ø 赛后通过
  • ! 尝试了但是失败了
  • - 没有尝试

A. Cards

签到。

B. Multiplication Table

题意:
给出一个\(n \cdot n\)的矩阵,\(a_{i, j} = b_i \cdot b_j\),现在告诉你\(a_{i, j}(i \neq j)\),要你还原出\(b_i\)。

思路:
考虑\(a_{1, 2} \cdots a_{1, n}\),我们发现\(b_1\)肯定是这些数的\(gcd\)的因数,那么枚举因数,\(n^2\)判断即可

C. Substring Game in the Lesson

题意:
给出一个字符串,问你刚开始有个子串\(S[l, r]\),现在要求找一个\(l' \leq l, r' \geq r\),使得\(S[l', r']\)的字典序小于\(S[l, r]\)。
两个人轮流操作,谁不能操作谁输,问两个人最优操作下,对于每个\(i\)令\(l = r = i\),谁会胜利?

思路:
显然,如果可以找到一个\(l', r'\),那么我们肯定可以找到最左的\(l'\),使得下一个人没办法操作。
现在\(l = r = i\),如果存在字典许比它小的,显然是第一个字母就比\(S_i\)小。
那么问题转化成,对于每个\(i\),是否存在一个\(j(j < i)\)并且\(S_j < S_i\)

D. Alex and Julian

题意:
有一个集合\(B\),以及所有的整数组成的点,对于一个整数\(i\),那么该点的标号为\(i\),现在如果两个点\(i, j\)满足\(|i - j| \in B\),那么\(i, j\)之间有一条无向边。
问至少删去\(B\)中多少个数,使得所有点按要求连完边之后该图是一个二分图。

思路:

  • 没有奇圈的图是一个二分图

考虑\(x, y\),假设从\(1\)出发,往后连边,那么他们相遇的点是\(lcm(x, y) + 1\),那么这个环的边数是:
\[
\begin{eqnarray*}
\frac{lcm(x, y)}{x} + \frac{lcm(x, y)}{y} = \frac{x}{gcd(x, y)} + \frac{y}{gcd(x, y)}
\end{eqnarray*}
\]

我们发现要使得这个式子不能为奇数,那么显然有偶加偶或者奇+奇。
我们考虑先将两个数都尽可能除\(2\),直到这两个数的公约数中没有\(2\)为止。
然后再来判断,那么现在至少有一个数是奇数,假设为\(x\),那么剩下的公约数肯定是个奇数。
那么考虑剩下的\(x, y\):

  • 如果\(x, y\)都是奇数,那么除掉一个奇数后还是奇数。
  • 如果只有一个是奇数,那么偶数的那个除掉一个奇数还是偶数,奇数那个除掉奇数还是奇数,那么就是奇 + 偶 = 奇,不合法

所以所有可以共存的数必然满足他们的最低二进制位一样。

Codeforces Round #586的更多相关文章

  1. Codeforces Round #586 (Div. 1 + Div. 2) E. Tourism

    链接: https://codeforces.com/contest/1220/problem/E 题意: Alex decided to go on a touristic trip over th ...

  2. Codeforces Round #586 (Div. 1 + Div. 2) D. Alex and Julian

    链接: https://codeforces.com/contest/1220/problem/D 题意: Boy Dima gave Julian a birthday present - set ...

  3. Codeforces Round #586 (Div. 1 + Div. 2) C. Substring Game in the Lesson

    链接: https://codeforces.com/contest/1220/problem/C 题意: Mike and Ann are sitting in the classroom. The ...

  4. Codeforces Round #586 (Div. 1 + Div. 2) B. Multiplication Table

    链接: https://codeforces.com/contest/1220/problem/B 题意: Sasha grew up and went to first grade. To cele ...

  5. Codeforces Round #586 (Div. 1 + Div. 2) A. Cards

    链接: https://codeforces.com/contest/1220/problem/A 题意: When Serezha was three years old, he was given ...

  6. Codeforces Round #586 (Div. 1 + Div. 2)

    传送门 A. Cards 记录一下出现的个数就行. Code #include <bits/stdc++.h> #define MP make_pair #define fi first ...

  7. Codeforces Round #586 (Div. 1 + Div. 2) D.Alex and Julian 简单证明

    题意:在序列中删除最少元素使得得到的图是二分图. 其中点是整数域的点. 比如b1=2   那么a可以连b当且仅当|a-b|=2 同时这里的a,b是任意整数. 怎样判定一个序列是否合法呢?于是想到了二分 ...

  8. Codeforces Round #586 (Div. 1 + Div. 2)D(二分图构建,思维,结论需数论证明)

    #include<bits/stdc++.h>using namespace std;long long a[200007];vector<int>v[77];int main ...

  9. Codeforces Round #586 (Div. 1 + Div. 2)E(拓扑排序,思维)

    #include<bits/stdc++.h>using namespace std;int n,m,s; vector<int>edge[200007];queue<i ...

随机推荐

  1. 【HC89S003F4开发板】 3串口调试

    HC89S003F4开发板串口调试 使用资料自带的demo 主程序 /************************************系统初始化************************ ...

  2. mysql全面整理(用于复习、查阅)--正在更新

    Mysql学习 1. 关键字与函数名称全部大写 2. 数据库名称.表名称.字段名称全部小写 3. SQL语句必须以分号结尾 一.数据库基本操作 1. 创建.查看数据库 CREATE {DATABASE ...

  3. Delphi XE10.1 引用计数(Delphi XE10.1 Berlin终于增加了对接口的Weak, UnSafe的支持)

    以往的Delphi版本,不支持接口的Weak,和UnSafe的引用,支持对象的Weak, UnSafe,而且仅在Android和Ios平台上支持. 现在Delphi XE10.1 Berlin终于增加 ...

  4. 怎么将visual studio项目打包生成dll文件

    1.打开电脑再打开visual studio软件,在软件里面新建一个项目,文件---->新建---->项目,打开新建项目窗口. 2.选择C#类工程,并为项目命名. 3.将类库文件class ...

  5. js展开循环

    当要对一个大数组进行循环时,通常会通过局部变量缓存数组长度来提高性能,例: for(var i=0,len=arr.len;i<len;i++){} 光是缓存数组长度或使用倒序遍历来减少判断外, ...

  6. python+django早教课程

    虚拟环境安装项目中需要安装许多插件,为不影响系统的环境,可以为项目新建一个虚拟环境,所有的早教课程安装包在该虚拟环境中独有,以防影响其他项目.1. 安装虚拟环境:pip install virtual ...

  7. K2 BPM_【解决方案】从“制造”到“智造”,K2推动制造业转型升级_业务流程管理系统

    近年来,中国制造业产出占全球总产品比例越来越大,是仅次于美国的全球第二大工业制造国,中国凭借巨大的制造业总量成为名副其实的“世界工厂”.然而个性化消费的兴起正在给制造企业各环节带来冲击.在现代市场环境 ...

  8. 网络基础 InetAddress

    IP地址是IP使用的32位(IPv4)或者128位(IPv6)位无符号数字,它是传输层协议TCP,UDP的基础.InetAddress是Java对IP地址的封装,在java.net中有许多类都使用到了 ...

  9. List集合和Set集合互转

    List集合转成Set集合(如果List集合的元素有重复,转成Set集合就会去掉重复的数据,每条数据只保留一条) //List转化成Set List<String> list = new ...

  10. awk初级教程

    参考:sed & awk 概述 sed & awk指令组成 与sed区别 尽管awk指令与sed指令的结构相同,都由模式和过程两部分组成,但过程本身有很大不同. awk看上去不像编辑器 ...