传送门

A. Cram Time

你有一本书,阅读第\(i\)页需要花费\(i\)的时间.你第一天有\(a\)的时间,第二天有\(b\)的时间,问你的总阅读页数的最大值.

Input:

一行包含\(2\)个数 \(a\ , b\ (0 \leq a\ , b\ \leq 10^9)\) 表示Lesha第一天的时间和第二天的时间.

Output:

输出第一行包含一个整数\(n\ (0 \leq n \leq a)\) 表示第一天的阅读数.第二行\(n\)个整数 \(p_1,p_2,...,p_n(1 \leq p_i \leq a)\)。

表示阅读的页码.满足 \((\sum_{i=1}^{n} p_i \leq a)\).

输出第三行一个整数\(m\),第四行\(m\)个整数\(q_i\)意义·同上.且任意2个页码不能相同,最大化你输出的\(n + m\)

\(\color{green}{solution}\)

一个不算太显然的贪心.因为我们只需要最大化看的页数,所以页码一定
选最小的.(比如选5或7,选5一定不会比选7的答案差).并且页码总值加起来
一定不大于\(n+m\),所以我们可以先找出最大的\(k\) 满足 \(\sum_{i=1}^{k} \leq n+m\).
然后先从大到小填满\(a\),再从小到大填满\(b\)即可

B. Minimum path

给你一个\(n \times n\)的矩阵,矩阵中每个单元填充着一个小写字母\(a\),你可以改变矩阵中至多\(k\)个字母为任意小写字母.
找出一条字典序最小的从 \((1,1)\) 到 \((n,n)\) 的路径.

Input:

第一行2个数\(n, k(1 \leq n \leq 2000,\ 0 \leq k \leq n^2)\) 如题所描述
第二行到第\(n+1\)行每行\(n\)个小写字母表示矩阵

Output:

一行一个字符串包含\(2n-1\)个小写字母表示你所找到的路径

\(\color{green}{solution}\)

C. Triple Flips

给你一个长度为\(n\)的\(01\)序列\(a\),你可以选择3个数\(a_x,\ a_y\, a_z\),对每个数翻转 \((0变1,\ 1变0)\).

  • \(1 \leq x < y < z \leq n,\ y - x = z - y\)

询问能否进行一系列操作使整个序列全部为\(0\).

Input:

第一行一个数\(n(3 \leq n \leq 10^5)\)
第二行\(n\)个数表示输入序列

Output:

第一行输出一个"YES"或"NO"表示是否有答案.
如果有答案,那么第二行一个数\(m\)表示操作数量.第3到第\(m+2\)行输出你的具体操作.
注意,必须满足 \(0 \leq m \leq \lfloor \frac n 3 + 12 \rfloor\)

\(\color{green}{solution}\)

先把\(1\)全部移到一边去,使最左边和最右边的\(1\)的位置相差不大于一个较小值(比如10)
可以证明操作数小于 \(\lfloor \frac n 3 \rfloor\)然后对于剩余的地方爆搜判断是否合法,操作数小于\(12\).

D. Familiar Operations

你有2个数\(a\)和\(b\),现在你可以对它们进行如下操作:

  • 将其中一个数乘上它的一个质因数\(p\);
  • 将之中一个数除以它的一个质因数\(p\);

询问:在最小的操作次数内使\(a\)的因子的个数与\(b\)的因子的个数相同.多组询问.

Input:

第一行一个整数\(T\ (T \leq 10^5)\) 表示询问组数.接下来\(T\)行每行2个正整数 \(a,\ b (1 \leq a,\ b \leq 10^6)\) 如题描述.

Output:

输出\(T\)行,每行一个数表示最小的操作次数


Codeforces Round #517的更多相关文章

  1. Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2)

    Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2) #include <bits/stdc++ ...

  2. Codeforces Round #517 体验记

    原文链接 https://www.cnblogs.com/zhouzhendong/p/CF1071.html 赛前: 呀,这个 Round # 必须打啊. 于是临时改变注意决定打这一场.用小号打. ...

  3. Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2) D. Minimum path

    http://codeforces.com/contest/1072/problem/D bfs 走1步的最佳状态 -> 走2步的最佳状态 -> …… #include <bits/ ...

  4. Codeforces Round #517 (Div. 2, based on Technocup 2019 Elimination Round 2) D. Minimum path(字典序)

    https://codeforces.com/contest/1072/problem/D 题意 给你一个n*n充满小写字母的矩阵,你可以更改任意k个格子的字符,然后输出字典序最小的从[1,1]到[n ...

  5. Codeforces Round #517 (Div. 2) C. Cram Time(思维+贪心)

    https://codeforces.com/contest/1065 题意 给你a,b,让你找尽量多的自然数,使得他们的和<=a,<=b,用在a和b的自然数不能重复 思路 假如只有一个数 ...

  6. Codeforces Round #517 (Div. 2)(1~n的分配)

    题:https://codeforces.com/contest/1072/problem/C 思路:首先找到最大的x,使得x*(x+1)/2 <= a+b 那么一定存在一种分割使得 a1 &l ...

  7. Codeforces Round #517 Div. 2/Div. 1

    \(n\)天没更博了,因为被膜你赛的毒瘤题虐哭了... 既然打了这次CF还是纪念一下. 看看NOIP之前,接下来几场的时间都不好.这应该是最后一场CF了,差\(4\)分上紫也是一个遗憾吧. A 给一个 ...

  8. Codeforces Round #517 (Div. 2)

    A #include<queue> #include<cstdio> #include<cstring> #include<algorithm> #de ...

  9. Codeforces Round #517 Div. 1翻车记

    A:真的懵逼了.冷静了半天之后决定二分一下答案,然后先a安排上尽量小的再贪心地一个个扩大.40min才过.这个做法非常怂的以代码复杂度和时间复杂度为代价换取了比较稳的正确性,事实上由于1~n可以组合出 ...

随机推荐

  1. android textview 显示一行,且超出自动截断,显示"..."

    android textview 显示一行,且超出自动截断,显示"..." <TextView android:layout_width="wrap_content ...

  2. UITableView.separatorInset

    [UITableView.separatorInset] separatorInset指定每行row之间的分隔线的长度,iOS7.0后提供,官方文档如下: 示例截图如下,分隔线没有紧贴着左右边界:

  3. swift学习之UIButton

    // //  ViewController.swift //  button // //  Created by su on 15/12/7. //  Copyright © 2015年 tian. ...

  4. pcd转obj

    文件转换 从PCD文件写入和读取点云数据:https://www.cnblogs.com/li-yao7758258/p/6435568.html 点云数据格式PCD(Point Cloud Data ...

  5. 搭建一个基于CentOS的可视化zookeeper管理工具zkUI实现对zk的可视化管理

    一. zookeeper 可视化工具   JMX => CLRProfile ZKUI => java写的一个可视化的web网站 github中下载 https://github.com/ ...

  6. Sqler-Monitor

    针对Sqler Monitor 功能做了整理 ##SqlServices ## Cluster. Alwayson Single ##Replicaion ##: 1:undelivedcmds mo ...

  7. 基于Extjs的web表单设计器 第三节——控件拖放

    看过之前设计器截图的朋友应该有印象,可能会发觉我们的设计器UI设计布局其实类似Visual studio 的设计界面,采用的是左.中.右三个区域布局.左侧为控件区域.中间为表单的画布设区域.右侧为属性 ...

  8. virtualbox上硬盘安装coreos

    网址: http://www.serfdom.cn/index.php/archives/4/ http://www.360doc.com/content/14/1118/10/15077656_42 ...

  9. maven项目打jar包

    打包有两种方式: 1.直接 项目--右键--export,选择JAR file打包(不推荐这种方式): 这样直接打的包通过java -jar 会提示“没有主清单属性”,需要修改jar包中的MANIFE ...

  10. (转)可以一同使用 DISTINCT 和 COUNT 关键词,来计算非重复结果的数目。

    点击收看