美文网首页
WAP2017在线面试题——两端取数

WAP2017在线面试题——两端取数

作者: FakerLi | 来源:发表于2017-06-08 20:45 被阅读0次

题目

题目内容

有A,B两个玩家,分别对一列n个数的队列取数,每个玩家每次可挑选队列两端的数,A先取,直到取完,最终取到的数值之和大的获胜,若相等,则A获胜,假设两个玩家都经过了充分的思考,现给定长度为n的数队列,问A是否能获胜,如果A能输出yes,否则输出no。

输入

输入为一行,第一个数字为n,后面有n个数字,为队列内的数字

输出

输出为一行,yes或者no

输入输出样例

输入:3 1 5 2
输出:no

输入:4 5 7 10 2
输出:yes

解题思路

是一道DP题目,将问题转化成对于区间i到j,先手比后手的分数差的最大值为dp[i,j],可以得到状态转移方程:
![][1]
[1]:http://latex.codecogs.com/gif.latex?dp%5Bi.j%5D%20%3D%20%5Cleft%5C%7B%5Cbegin%7Baligned%7D%26a%5Bi%5D%2Ci%3Dj%5C%5C%26max%28a%5Bi%5D-dp%5Bi+1%2Cj%5D%2Ca%5Bj%5D-%20dp%5Bi%2Cj-1%5D%29%2Celse%20%5Cend%7Baligned%7D

代码

#include <bits/stdc++.h>

int main(void) {
    int n;
    while (std::cin >> n) {
        std::vector<int> a(n + 5);
        std::vector<std::vector<int>> dp(n + 5, std::vector<int>(n + 5, 0));
        for (int i = 1; i <= n; i++) {
            std::cin >> a[i];
            dp[i][i] = a[i];
        }
        for (int k = 1; k < n; k++) {
            for (int i = 1; i <= n - k; i++) {
                int j = i + k;
                dp[i][j] = std::max(a[i] - dp[i + 1][j], a[j] - dp[i][j - 1]);
            }
        }

        if (dp[1][n] >= 0) std::cout << "yes" << std::endl;
        else std::cout << "no" << std::endl;

    }
    return 0;
}

相关文章

  • WAP2017在线面试题——两端取数

    题目 题目内容 有A,B两个玩家,分别对一列n个数的队列取数,每个玩家每次可挑选队列两端的数,A先取,直到取完,最...

  • Java如何让线程池满后再放队列

    背景 最近收到一道面试题:我们知道JDK的线程池在线程数达到corePoolSize之后,先判断队列,再判断max...

  • js取整和取随机数

    取整: 取随机数 取任意两个数之间的随机数

  • 口径、维度、指标

    口径是取数逻辑(如何取数的),比如要取的数是10岁以下儿童中男孩的平均身高。维度是我取数的依据字段:年龄、性别、身...

  • Postgresql 取随机数

    Postgresql 取随机数: 标签:取0和1之间的随机数SELECT RANDOM(); 取介于两数之间的随机...

  • 向上取数

    取两个数组中的最大值,然后将向上取整,如14000,变成20000.

  • Flutter面试题

    Flutter在线[https://dartpad.dartlang.org/?] Flutter面试题汇总[ht...

  • Python 字符操作

    python 两数相除取小数和百分数 取小数 和 百分数

  • 游戏指标分析之--在线平高比

    在线平高比(ACU/PCU),叫做CCU比率 定义:当日平均在线玩家数与最高在线玩家数的比值 统计逻辑:ACU/P...

  • 蓝杯十六

    一、/*回形取数 问题描述回形取数就是沿矩阵的边取数,若当前方向上无数可取或已经取过,则左转90度。一开始位于矩阵...

网友评论

      本文标题:WAP2017在线面试题——两端取数

      本文链接:https://www.haomeiwen.com/subject/iuizfxtx.html