zoukankan      html  css  js  c++  java
  • 2016寒假训练1

    题目链接

    A CodeForces 397A On Segment's Own Points

    直接模拟就OK了

    B CodeForces 397B On Corruption and Numbers

    题意:用l到r区间的数字,看看是否可以组成金额n, 每一个价格可以取任意数量

    分两种情况讨论:

    第一,如果 R>=2*L-1 那么一定是yes 。因为 n % L一定是一个处于 0 ~ L-1 的数,即存在 X 属于 [ 0 , L-1 ],使得 n = k * L + X ,那么 n = (k – 1)*L + ( L + X) , 可以看出 L+X 一定位于 L ~ R之间。

    第二, 设 n = k * L + X ,如果 k *R >= n 说明必有一个数 x1 可以满足要求。

    C CodeForces 397C On Number of Decompositions into Multipliers

    给定n个数字ai, m=a1a2a3...an 求把m分解成n个数字相乘的方案个数,最终结果%1000000007。

    我们先对给定的ai 进行因式分解,即将m 进行因式分解,得到 素因子以及该素因子出现的次数。

    将m分解成n个数字相乘,即这些素数因子组成n个数字。

    那么我们考虑将每一个素数分为n份 (可以为空)。用到高中的组合数学,即将n件物品分为m份(可以为空)的方案数是c[N+M-1][M-1]

    这题还可以使用map 优化代码

    D CodeForces 397D On Sum of Fractions

    题意很明显可以看出来,V(n)是 <=n 的最大素数 U(n)是严格大于n 的最小素数

    我们可以看出,每一次的 1/(v*u) 最多持续 ( u-v)项,也就是这一段连续的 1/(v[i] * u[i])的和 是(u-v) / (v[i] * u[i]) 。

    也就是最终的答案会是 连续的完整的(这里的完整指的是出现了 (u-v)项) 1/(vu) 加上 不完整的若干项 1/(v*u)

    那么我们可以看到,有一种情况就是,答案是全部都是完整的1/(u*v),即n+1 就是素数,那么在这种情况下 我们可以看出 (a2-a1)/(a1a2) + (a3-a2)/(a2a3) = (a3-a1) / (a1a3) 也就是说最终的答案只会和首末项有关, 即最终答案为 (u[n] – 2) / ( 2u[n] )

    第二种情况,会剩下 (n-v[n]+1)个 1 / (u[n]v[n]) ,也就是答案应该为 1/2 – 1/(u[n]) + (n-v[n]+1)/ (u[n]v[n])

    E CodeForces 389A Fox and Number Game

    辗转相除法,就是gcd

    F CodeForces 389B Fox and Cross

    给定一张图,问是否可以用十字架填充‘#’。 当且仅当 一个 ‘#’上下左右都是‘#’的时候才可以进行填充

    做法:直接暴力for

    G CodeForces 389C Fox and Box Accumulation

    直接贪心,不用考虑太多

    H CodeForces 389D Fox and Minimal path

    这题折磨了我很久,一直都是wa

    参见我的个人博客

    I CodeForces 389E Fox and Card Game

    题意:2个人轮流抽牌,先手只能从牌堆上方抽,后手只能从牌堆下方抽。两个人都知道现在所有牌的情况(即知道每一堆的每一张牌),要求每个人最终抽取的牌的总和尽可能大。求出两个人最终得分。

    直接贪心。很显然,先手取走了一堆牌的上半堆,后手取走了一堆牌的下半堆。

    那么对于牌的张数为奇数的那些堆,按照中间的那张牌的大小进行排序,然后a和b一人一张 即为最终答案。

    题目+简要题解+代码

  • 相关阅读:
    ConcurrentHashMap的使用和原理
    记录下项目中常用到的JavaScript/JQuery代码一(大量实例)
    layer ui插件显示tips时,修改字体颜色
    flash上传文件,如何解决跨域问题
    ubuntu下的mv命令
    Semantic 3D
    shellnet运行train_val_seg.py
    Tensorflow的不足之处
    用pip命令把python包安装到指定目录
    ubuntu建立文件或者文件夹软链接
  • 原文地址:https://www.cnblogs.com/Coolaaa/p/5176302.html
Copyright © 2011-2022 走看看