传送门

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. SQLServer获取临时表列名并判断指定列名是否存在

    if(OBJECT_ID('tempdb.dbo.#tempTB') is not null)begin drop table #tempTB;end create table #tempTB(ID ...

  2. wmi收集系统信息 发送到服务器打印

    #include "WMIManager.h" #include <vector> #include <string> #include <boost ...

  3. Android文件上传

    服务端: using System; using System.Collections.Generic; using System.Linq; using System.Web; using Syst ...

  4. openssl生成ssl证书(转)

    原文:http://blog.sina.com.cn/s/blog_4fd50c390101891c.html x509证书一般会用到三类文,key,csr,crt. Key 是私用密钥openssl ...

  5. tab切换代码优化

    上次的tab切换的代码里面有很多重复的代码,需要做做优化,把重复的代码用函数封装起来调用. 优化前: <script> //获取id封装成一个函数$()方便调用 function $(id ...

  6. Web前后端数据交换技术和规范发展史:Form、Ajax、Comet、Websocket

    第一阶段:Form web应用想要与服务器交互,必须提交一个表单(form).服务器接收并处理该表单,然后返回一个全新的页面. 缺点:前后两个页面需要更新的数据可能很少,这个过程可能传输了很多之前那个 ...

  7. webapi Model Validation 模型验证

    通常情况下,对于那些经常为别人提供数据接口的开发人员来说,对于调用方传递过来的参数都会有验证处理.例如: if (string.IsNullOrEmpty(entity.Name)) { //当姓名为 ...

  8. Opencascade、OpenGL和OpenSceneGraph的区别与联系

    OpenGL只是三维显示 Openscenegraph基于场景图的概念,它提供一个在OpenGL之上的面向对象的框架,从而能把开发者从实现和优化底层图形的调用中解脱出来 Opencascade更适合算 ...

  9. struts2 动态Action

    1.java 2.struts.xml struts2.5,默认关闭动态Action,着色的是开启和使用动态action 3.JSP 小结:访问时,用!后跟方法名的方法,方法返回值----->r ...

  10. Intel Cyclone SoC FPGA介绍

    3.1 Intel Cyclone SoC FPGA介绍 3.1.1 SoC FPGA的基本概念 Intel Cyclone V SoC FPGA是Intel PSG(原Altera)于2013年发布 ...