P2734 游戏 A Game(DP问题)

原创 2017年06月04日 20:54:55

P2734 游戏 A Game

    • 102通过
    • 181提交
  • 题目提供者该用户不存在
  • 标签 USACO 云端
  • 难度 普及+/提高
  • 时空限制 1s / 128MB

题目背景

有如下一个双人游戏:N(2 <= N <= 100)个正整数的序列放在一个游戏平台上,游戏由玩家1开始,两人轮流从序列的任意一端取一个数,取数后该数字被去掉并累加到本玩家的得分中,当数取尽时,游戏结束。以最终得分多者为胜。

题目描述

编一个执行最优策略的程序,最优策略就是使玩家在与最好的对手对弈时,能得到的在当前情况下最大的可能的总分的策略。你的程序要始终为第二位玩家执行最优策略。

输入输出格式

输入格式:

第一行: 正整数N, 表示序列中正整数的个数。

第二行至末尾: 用空格分隔的N个正整数(大小为1-200)。

输出格式:

只有一行,用空格分隔的两个整数: 依次为玩家一和玩家二最终的得分。

输入输出样例

输入样例#1:
6 
4 7 2 9 5 2
输出样例#1:
18 11

说明

题目翻译来自NOCOW。

USACO Training Section 3.3

代码



#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<cmath>
using namespace std;
int dp[150][150],sum[150];
int main(){
#ifndef ONLINE_JUDGE
  freopen("input.in","r",stdin);
  freopen("output.out","w",stdout);
#endif
    int i,j,k,m,n;
    scanf("%d",&n);
    for(i=1;i<=n;i++){
        scanf("%d",&dp[i][i]);
        sum[i]=sum[i-1]+dp[i][i];
    }
    for(i=1;i<=n;i++)
        for(j=1;j<=n-i;j++)
            dp[j][j+i]=max(dp[j][j]+sum[j+i]-sum[j]-dp[j+1][j+i],
                    dp[j+i][j+i]+sum[j+i-1]-sum[j-1]-dp[j][j+i-1]);

    printf("%d %d",dp[1][n],sum[n]-dp[1][n]);
    return 0;
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

洛谷【P2734】 游戏 A Game

题目背景有如下一个双人游戏:N(2
  • George__Yu
  • George__Yu
  • 2017年07月22日 18:10
  • 210

[Game Engine]开源游戏框架(转至wiki)

   Agar - 一个高级图形应用程序框架,用于2D和3D游戏。Allegro - 基于 C/C++ 的游戏引擎,支持图形,声音,输入,游戏时钟,浮点,压缩文件以及G...
  • huodianyan
  • huodianyan
  • 2014年09月29日 08:17
  • 1016

XNA4.0 RPG游戏开发教程(一)

翻译国外的系列教程,一步步讲述如何用XNA4.0开发RPG游戏,是XNA4.0游戏开发为数不多的具有实战意义的教程。 原文地址:http://xnagpa.net/xna4rpg.php 作者非常耐心...
  • clb929
  • clb929
  • 2016年02月26日 21:24
  • 4400

PyQt挖地雷游戏学习笔记(2)

分析多个文件组成的源代码,最好使用辅助工具。 我试过Source Navigator 和 Source Insight,感觉后者功能多些,比较好用。 一、程序的组成模块等文件 这个挖地雷游戏,主要由2...
  • lawme
  • lawme
  • 2014年09月10日 21:53
  • 2785

C#使用 MonoGame* 开发游戏

全球各地的开发人员都希望开发游戏。 为什么不呢? 游戏是计算机历史上销量最高的产品之一,游戏业务带来的财富不断吸引着开发人员的加入。 作为开发人员,我当然希望成为下一个开发愤怒的小鸟* 或光晕*的开发...
  • y13156556538
  • y13156556538
  • 2017年03月20日 21:20
  • 1485

IOS平台游戏如何对接GameCenter

现在随着手游市场的不断扩大,活跃在IOS平台下的游戏厂商为了增加玩家的粘性,以及为自己的游戏前途考虑都纷纷开始接入苹果国内公司的游戏平台GameCenter;今天呢我就把我对接GameCenter的一...
  • shenjie12345678
  • shenjie12345678
  • 2015年04月13日 17:41
  • 21555

用 React + es6 完成一个著名的生命游戏(Game of life,Conway)

http://elevenbeans.github.io/2017/04/05/Game-of-life/ 这是有名的康威生命游戏, 描述的是一种细胞自动机。 对一个 M*N 的区域,每一...
  • sinat_17775997
  • sinat_17775997
  • 2017年04月14日 12:25
  • 1384

几个常见的DP问题及解法

前言记录一些最近遇到的DP问题,并给出解法。只会记录我知道的最优解法(一般是时间最优),并贴出源码。有OJ的还会贴上地址。1. 求字符串的最长不重复子串的长度举例: abcabcbb,返回abc; b...
  • yi_Afly
  • yi_Afly
  • 2016年08月01日 00:12
  • 3893

Ruby Warrior —— 用游戏学习Ruby (附全部关卡代码)

游戏地址: https://www.bloc.io/ruby-warrior 今天发现了这个好玩的游戏,一下午通关。 BGM很洗脑,嗯。 Level 1 # 方法调用 class Play...
  • synapse7
  • synapse7
  • 2014年02月15日 17:39
  • 3963

自己写游戏引擎一 功能简介(make game engine by self - introduce)

基本思想:   1,模块设计思想:低耦合,高内聚,易用,容错。各模块均可快速移植,面向接口即插即用。           纹理模型等资源使用智能指针自动释放并且自动避免重复加载。场景组织模仿2d...
  • twopointfive
  • twopointfive
  • 2013年05月14日 13:06
  • 744
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:P2734 游戏 A Game(DP问题)
举报原因:
原因补充:

(最多只允许输入30个字)