zoukankan      html  css  js  c++  java
  • Educational Codeforces Round 16 A B C E

    做题太久也有点累了..难题不愿做 水题不愿敲..床上一躺一下午..离下一场div2还有点时间 正好有edu的不计分场 就做了一下玩玩了

    D是个数学题 F是个AC自动机 都没看明白 留待以后补

    A 给出一个8x8棋盘中国王的位置 问国王有多少移动方式 判断输出就可以了

    B 给出n个x轴上的数 找出一个数 使其到其他所有数的距离和最小 输出这个数的值

    其实这道题是见过的 想法是 先排序 维护一个res 初始值是从最小的数到其他数的距离和 之后每次向右移动 这时候 res会减去右边点数*两点距离差 加上左边点数*两点距离差 这样 由于距离差必定是一个整数 所以res其实是一个先减后增的 所以当res开始变大的时候就可以break了 但是加break会错..去掉就对了 不过用时也比较多 800+ms擦边过

    其实可以看到的是 res先减后增 它每次的变化 是(左边点数-右边点数)*距离差 所以转折的时候 应该是变化为0或突然为正 于是直接可以得出 奇数的时候 是中间的 偶数的时候 是中间偏左的 判断一下就可以了

    C 给出一个n*n矩阵 n为奇数 在其中填入1-n*n的不重复的数 要求每一行每一列以及两条主对角线的和都为奇数 

    可以看到其实填入的数所提供的属性只有奇偶而非大小 一开始准备dfs小数据找规律 但是出了一个参数写错的bug 写了一个小时也没写出来 第二天在纸上找规律 发现一个正方形中 应该放奇数的应该是中间的偏45度n*sqrt(2)正方形 控制完奇偶之后填数就可以了

    E 要求从一个空文本中得出一个长n的字符串 两种操作 1 使用x的时间插入/删除一个字符 2 使用y的时间复制当前所有文本并粘贴

    比赛后做的 看到了标签中的DP 也很好想 每个点都有自己的责任 被前一个点或者后一个点优化 去优化前一个点 后一个点 *2的点

    如果一个点*2之后越过n了 那么如果n以及n之前的由这个操作而受益 那么只能是通过之后不断的删减而做到 那么每次当*2越过n之后 应当尝试去优化的是n

    搜索应当是不可做的 因为我们并不知道 n状态会被哪一个状态给再次优化 所以我们应当让所有的状态都渐渐消失 在n达到1e7的情况下 大概是不可以的

  • 相关阅读:
    redis 中 set 和 hset 有什么不同,什么时候使用 hset 什么时候使用set?
    redis的底层数据结构
    python开发-实现redis中的发布订阅功能
    使用redis-py的两个类Redis和StrictRedis时遇到的坑
    python使用redis实现协同控制的分布式锁
    深入理解 Python 异步编程(上)
    linux中read,write和recv,send的区别
    socket常见问题
    python socket 编程之三:长连接、短连接以及心跳
    Flask快速入门
  • 原文地址:https://www.cnblogs.com/rayrayrainrain/p/5801323.html
Copyright © 2011-2022 走看看