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

    题目链接

    A CodeForces 362A Two Semiknights Meet

    题意:在一个棋盘中有两个定义了特殊走法的棋子,同时移动他们,问是否会相遇(只能在合法的位置)。

    做法:直接暴力dfs处理出这两个棋子到达各个位置的时间,如果到达同一个格子的时间差%2==0,就可以相遇。

    B CodeForces 362B Petya and Staircases

    题意:跳台阶,有的位置是坏的,问是否可以跳到顶层

    正解就是直接模拟

    C CodeForces 362C Insertion Sort

    题意:给定n个数0~n-1的数列,求逆序对以及交换该数列中任意两个数之后最小的逆序对数

    做法:dp预处理之后,枚举修改的两个数。也可以用树状数组。

    D CodeForces 362D Fools and Foolproof Roads

    题意:给定一个n个点m条边的无向图,要求在图里面增加p条边(边权按照题目给的条件),并且这张图的连通分量数为q。

    做法:贪心。每次取出连通块中最小的两块进行合并。

    E CodeForces 362E Petya and Pipes

    费用流模版题

    F CodeForces 365A Good Number

    题意:题意坑爹。能过样例基本就没问题了。给定n和k,问接下去的n个数中有哪些数字是由0~k组成的(0~k都必须出现)。

    做法:直接做。。

    G CodeForces 365B The Fibonacci Segment

    题意:找出最长的符合斐波那契的长度。

    做法:预处理之后直接做。但是要注意n=1,n=2,以及连续0的情况。

    H CodeForces 365C Matrix

    题意:给定a和s,构造一个矩阵bij = si·sj,问有多少个子矩阵的和为a。

    做法:先预处理出前缀和数组sum[i],然后构造times数组,times[i]表示和为i的前缀和段的出现次数。然后枚举。a=0的情况需要特殊讨论。

    I CodeForces 365D Free Market

    题意:每天可以去市场上进行一次物品交换,要求交换的物品当前没有,并且价值差不小于d。求可以获得的最大价值以及天数。

    做法:dp预处理出可以取到的所有价值。然后从0开始取物品,直到某一天不能进行交换为止。

    题目+简要题解+代码

  • 相关阅读:
    《将博客搬至CSDN》
    关于数据分析师出路的思考
    什么样的人适合学金融工程?
    再谈到计算机网络的学习
    学习金融工程的随笔
    走上量化投资道路的回顾
    idea构建docker镜像并发布到服务器
    Elastic:菜鸟上手指南
    分布式事务专题
    mysql 慢查询日志分析与使用
  • 原文地址:https://www.cnblogs.com/Coolaaa/p/5221184.html
Copyright © 2011-2022 走看看