zoukankan      html  css  js  c++  java
  • 【贪心】取数游戏

    【贪心】取数游戏

    时间限制: 1 Sec  内存限制: 64 MB

    题目描述

    给出2n(n≤100)个自然数(小于等于30000)。将这2n个自然数排成一列,游戏双方A和B从中取数,只允许从两端取数。A先取,然后双方轮流取数。取完时,谁取得数字总和最大为取胜方;若双方和相等,属B胜。试问A方是否有必胜策略?

    输入

    共2行,第1行一个整数n;第2行有2*n个自然数。

    输出

    只有1行,若A有必胜策略,则输出“YES”,否则输出“NO”。

    样例输入

    4
    7 9 3 6 4 2 5 3
    

    样例输出

    YES

    思路:A先取一个数可以选择奇数的位置或者偶数的位置,如果取了奇数A就可以一直取奇数当A一直取奇数时B只能取偶数,如果取了偶数A就可以一直取偶数当A一直取偶数时B只能取奇数。
    例如:7 9 3 6 4 2 5 3 A取第8个数B只能取第1或者7个数....



     1 #include <iostream>
     2 
     3 using namespace std;
     4 int a;
     5 int n;
     6 int ji;
     7 int ou;
     8 int main()
     9 {
    10     while(cin>>n)
    11     {
    12         ji=ou=0;
    13         for(int i=1;i<=2*n;i++)
    14         {
    15             cin>>a;
    16             if(i%2==1)
    17                 ji+=a;
    18             else
    19                 ou+=a;
    20         }
    21         if(ji!=ou)
    22             cout<<"YES"<<endl;
    23         else
    24             cout<<"NO"<<endl;
    25     }
    26     return 0;
    27 }
  • 相关阅读:
    基础DP背包
    哲学思絮01
    Vue使用ElementUI
    Vue-Mock数据
    Vue生命周期
    Vue实战之CURD
    读《间客》有感
    ASP.Net Core网站发布
    Cycling之 标签化
    Vue环境搭建
  • 原文地址:https://www.cnblogs.com/asuml/p/5692089.html
Copyright © 2011-2022 走看看