• CodeForces 281 题解


    A题:

    题意:给出按照时间顺序的比赛记录,比赛记录了哪一分钟有哪位球员得到了黄牌或红牌,输出罚下的人的序列。

    题解:直接按照时间读入模拟就可。。注意坑在有可能一位球员罚下后又得到黄牌或红牌,这时候不应再输出这个人了。

    B题:

    题意:给出两个摔跤选手每个动作的得分,正数为第一个人得分负数为第二个人得分,总分高者胜,若相同则“字典序”较大的获胜,再相同则最后得分的人获胜。

    题解:直接模拟就可。。要用long long。。

    C题:

    题意:两个队伍篮球比赛,给出每个队伍投进的每个球距离球框的距离,现在要规定一个三分线距离D,小于等于D的为两分球,反之为三分球,问A队减去B队分数的最大值。

    题解:不难想到三分线的距离必然为两个队比赛记录中的某个距离,枚举每个距离算出两队的得分更新答案即可,注意若存在多个答案,输出a得分最高的一个。

    D题:

    题意:一个N*N的棋盘,(1,1)为第一个玩家的王后,(1,N)为第二个玩家的王后,王后可以横着竖着斜着走,棋盘上除了这两个位置外都摆满了棋子,两个玩家轮流行动,每一步必须吃掉一个棋子,王后被吃掉的或不能行动输掉比赛,问双方最优策略下先手是否存在必胜策略,若存在输出第一步。

    题解:n为奇数先手必败,n为偶数先手必胜:

    证明:若n为奇数,则后手只要按照先手的走法,则两人横向间相距的格子数必为奇数,先手永远无法吃到后手,直到后手吃掉先手或者先手无法行动则失败。

       若n为偶数,则先手先往右走一步,两人间的距离变为奇数,此时先手始终跟随后手的走法即可,分析如n为奇数的情况。

    E题:

    题意:求存在多少个系数均为正整数的多项式,使得f(t)=a f(a)=b 输出方案数mod1E9+7

    题解:那个模数就是吓人的啊。。答案最多两个啊。。比赛时候一直没想出来。。看到题解恍然大悟

       把多项式写成f(x)=an*x^n+an-1*x^n-1+....+a0的形式

       则a=an*t^n+an-1*t^n-1+....+a0

       若t不为1 则可发现a大于an,an-1,an-2....a0

       这时候带入f(a)=b 则an*a^n+an-1*a*n-1+....+a0=b

       这是b的a进制表示啊!!

       于是把b转换成a进制,然后判断f(t)是否等于a即可。。。。

       现在还有两种情况:

       (1)对于t=1的情况

        t=1 a=1 b=1 答案为inf 显然

        t=1 a=m b=m^n 答案为1 为f(x)=mx^n-1

        其他的可以按照前面的方法处理 因为这种情况下b的a进制表示至少有两个数 则a大于an,an-a,an-2,...,a0成立

       (2)对于a=1的情况

        显然无法转换为1进制(= =) 所以特判掉这种情况就好了 只有a=b=1为一种情况,其他均为无解。

  • 相关阅读:
    python 最简单的web应用(一)
    adb命令
    python 面向对象(四)--实例属性和类属性
    python 面向对象(三)--继承和多态
    python 面向对象(二)--访问限制
    python 面向对象(一)--类(class)和实例(Instance)
    前端性能优化方法
    myeclipse实现Servlet实例(1) 通过继承servlet接口实现
    myeclipse实现Servlet实例(3) 通过继承HttpServlet接口实现
    马士兵Servlet&Jsp学习
  • 原文地址:https://www.cnblogs.com/zscnash/p/4143740.html
Copyright © 2020-2023  润新知