沈阳化工大学第十一届程序设计沈阳区竞赛:凿冰 Action(博弈论,思维)

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网
 

题目描述

北极探险队有新收获了!!!

北极探险队发现了NNN条长度不一的冰柱,由于冰柱里封存有价值的生物,现在需要两名生物学家小A和小B对冰柱进行分析,公平起见,探险队将每条冰柱都均分成长度为1的冰块,现在规定两位生物学家开始轮流选择冰块,小A先选,每次选择小A只能在任意一条没被选空的冰柱的最左边选择一个长度为1的冰块,而小B只能在任意一条没被选空的冰柱的最右边选择一个长度为1的冰块;

依据题意,上述这条冰柱,小A会选择左边四个冰块 价值为33+17+2+6=58,33 + 17 + 2 + 6 = 58,33+17+2+6=58, 同理小B选择右边三个的价值为11+18+19=48.11 + 18 + 19 = 48.11+18+19=48.

问:若两位生物学家都采用最优策略,那么 小A 和 小B 的能选到的冰块价值最后分别是多少?

输入描述:

 

第一行输入一个n(1≤n≤105)n(1 \leq n \leq 10^5)n(1≤n≤105), 表示冰柱数量。

接下来nnn行,
每行第一个数字x(0≤x≤105)x (0 \leq x \leq 10^5)x(0≤x≤105),表示将冰柱分成xxx个冰块,紧接着输入xxx个数字aia_iai​,每个ai(1≤ai≤109)a_i(1 \leq a_i \leq 10^9)ai​(1≤ai​≤109)表示每个冰块的价值。

数据保证xxx之和不超过2×105;2 × 10^5;2×105;

输出描述:

分别输出 小A的分数 和 小B的分数。

示例1

输入

复制1 7 33 17 2 6 11 18 19

1
7 33 17 2 6 11 18 19

输出

复制58 48

58 48

示例2

输入

复制3 4 15 18 17 16 2 1 3 1 20

3
4 15 18 17 16
2 1 3
1 20

输出

复制54 36

54 36

做法

如果是奇数,就两人分别取左右两边,最后剩一个数存起来;如果是偶数,就直接两人取左右两边。最后存起来的那些数,两人都取剩下中最大的。

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=1e5+10;
int n,x,a[N];
int ans1,ans2;
signed main(){
    cin.tie(0);
    ios::sync_with_stdio(0);
    cin>>n;
    vector<int> v;
    for(int i=1;i<=n;i++){
        int x;
        cin>>x;
        vector<int> g(x+1);
        for(int j=1;j<=x;j++){
            cin>>g[j];
        }
        
        if(x%2){
            for(int j=1;j<=x/2;j++){
                ans1+=g[j];
            }
            v.push_back(g[x/2+1]);
            for(int j=x/2+2;j<=x;j++){
                ans2+=g[j];
            }
        }
        
        else{
            for(int j=1;j<=x/2;j++){
                ans1+=g[j];
            }
            for(int j=x/2+1;j<=x;j++){
                ans2+=g[j];
            }   
        }   
    }
    sort(v.begin(),v.end());
    int cnt=0;
    for(int i=v.size()-1;i>=0;i--){
        if(cnt%2==0) ans1+=v[i];
        else ans2+=v[i];
        cnt++;
    }
    cout<<ans1<<" "<<ans2;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/891413.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

JAVA就业笔记4——第二阶段(1)

课程须知 A类知识&#xff1a;工作和面试常用&#xff0c;代码必须要手敲&#xff0c;需要掌握。 B类知识&#xff1a;面试会问道&#xff0c;工作不常用&#xff0c;代码不需要手敲&#xff0c;理解能正确表达即可。 C类知识&#xff1a;工作和面试不常用&#xff0c;代码不…

力扣第1题:两数之和(图解版)

Golang版本 func twoSum(nums []int, target int) []int {m : make(map[int]int)for i : range nums {if _, ok : m[target - nums[i]]; ok {return []int{i, m[target - nums[i]]}} m[nums[i]] i}return nil }

Apache Doris介绍

Apache Doris 的发展 Apache Doris 是一款基于 MPP 架构的高性能、实时的分析型数据库&#xff0c;以高效、简单、统一的特点被人们所熟知&#xff0c;仅需亚秒级响应时间即可返回海量数据下的查询结果&#xff0c;不仅可以支持高并发的点查询场景&#xff0c;也能支持高吞吐的…

【Docker系列】Docker查看镜像架构

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

MeterSphere接口自动化平台调试

1。后置脚本节目 //导入json包 import org.json.*; import com.decode.DecodeMain; String responseprev.getResponseDataAsString(); String result DecodeMain.DecodeUtil(response); log.info(“获取批次账单id result:”result); //转换为Object对象类型 JSONObject data_…

Spring Boot在医疗信息交互系统中的应用

第1章绪论 计算机已经从科研院所&#xff0c;大中型企业&#xff0c;走进了平常百姓家&#xff0c;Internet遍及世界各地&#xff0c;在网上能够用计算机进行文字草拟、修改、打印清样、文件登陆、检索、综合统计、分类、数据库管理等&#xff0c;用科学的方法将无序的信息进行…

“云计算+高职”:VR虚拟仿真实训室的发展前景

随着科技的飞速进步&#xff0c;云计算与虚拟现实&#xff08;VR&#xff09;技术的结合正在深刻改变着教育领域&#xff0c;尤其是在高等职业教育中&#xff0c;这一融合为实训教学带来了革命性的变革。VR虚拟仿真实训室作为这一变革的前沿阵地&#xff0c;正展现出广阔的发展…

Linux下如何将代码提交至Gitee

首先在gitee中创建自己的仓库. 下面是已经创建好的仓库 然后复制仓库的链接(点击上图克隆/下载) 接下来打开linux, 1.在命令行输入git clone 链接 2. 输入ll,即可看到linux-course项目仓库 3.cd linux-courses(进入项目仓库) 4.在仓库中可以随意增加文件 例如增加test.c文件…

vue使用js-xlsx导入本地excle表格数据,回显在页面上

效果图 解释放在代码的注释中 页面代码&#xff0c;导入本地文件我用的是element的上传工具 // 我是根据js文件直接引入的 <script src"/js/xlsx.full.min.js"></script>// 导入excelreadWorkbookFromLocalFile(fileData) {// 文件信息const file f…

【优选算法】——双指针(上篇)!

&#x1f308;个人主页&#xff1a;秋风起&#xff0c;再归来~&#x1f525;系列专栏&#xff1a;C刷题算法总结&#x1f516;克心守己&#xff0c;律己则安 目录 前言&#xff1a;双指针 1. 移动零&#xff08;easy&#xff09; 2. 复写零&#xff08;easy&#xff09; 3…

解决ImageIO无法读取部分JPEG格式图片问题

解决ImageIO无法读取部分JPEG格式图片问题 问题描述 我最近对在线聊天功能进行了一些内存优化&#xff0c;结果在回归测试时&#xff0c;突然发现有张图片总是发送失败。测试同事把问题转到我这儿来看&#xff0c;我仔细检查了一下&#xff0c;发现是上传文件的接口报错&#…

软件测试学习笔记丨Linux三剑客-grep

本文转自测试人社区&#xff0c;原文链接&#xff1a;https://ceshiren.com/t/topic/32506 一、简介 1.1 grep命令 grep是一个全局查找正则表达式&#xff0c;并且打印结果行的命令。grep的输入是一个文件或者一个标准输入&#xff08;stdin&#xff09;&#xff0c;或者是一…

用JAVA写人工智能应用_JAVA_AI

目录 ​编辑 Java AI 介绍&#xff1a;Spring AI - Java领域的AI开发新利器 Spring AI 扩展&#xff1a;Spring AI Alibaba&#xff0c;简化Java应用AI集成 SpringBoot集成阿里云AI服务&#xff1a;构建对话应用指南 基于SpringBoot集成Spring AI Alibaba 1. 环境准备 2…

JavaScript将array数据下载到Excel中

具体代码如下&#xff1a; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widt…

【Windows命令】Windows下启动Nginx后,在任务管理器里面没有发现nginx.exe进程

如题&#xff0c;当在本地Windows环境下想用反向代理时&#xff0c;突然发现在任务管理器里面没有发现nginx.exe进程&#xff0c;但是端口又是占用的。这时就要用Windows命令了。 查询端口占用 netstat -ano | findstr :80 根据进程ID&#xff08;pid&#xff09;查询进程名称…

Java_EE(反射技术)

反射机制介绍: 什么是反射Java反射机制是Java语言一个很重要的特性&#xff0c;它使得Java具有了“动态性”。在Java程序运行时&#xff0c;对于任意的一个类&#xff0c;我们能不能知道这个类有哪些属性和方法呢&#xff1f;对于任意的一个对象&#xff0c;我们又能不能调用它…

IOS APP初体验-第2课:给Iphone App设置个ICON

目录 第一步、图片尺寸 第二步、找到项目内Assets节点&#xff0c;把自己的图片复制进来 第三步、图片设置 第四步、启动项目真机调试 第一步、图片尺寸 设置一张图片&#xff0c;要求图片格式JPG&#xff0c;图片尺寸1024px*1024px。 第二步、找到项目内Assets节点&#…

2024腾讯全球数字生态大会 | 线上直播活动参与教程

2024腾讯全球数字生态大会 | 线上直播活动参与教程 9月5-6日,2024腾讯全球数字生态大会,共见最新 全景式产品服务矩阵,了解智能科技如何成本优化、 生产提效、重塑商业生态、加速全球布局。 大会亮点 100大咖趋势洞察 100专业白皮书 100开发者活动福利 体验丰富前沿智能应用落…

SCALABLEANDEFFECTIVE IMPLICIT GRAPH NEURALNETWORKS ON LARGEGRAPHS

ICLR24 推荐指数&#xff1a; #paper/⭐⭐ 领域&#xff1a; 大图&#xff0c;图扩展 大概的工作&#xff1a;提出了针对子图的虚拟节点&#xff0c;让所有点都与其相连 相关工作&#xff1a; 传统GNN与Inplicit gnn 传统GNN的传播函数&#xff1a; Z ( l 1 ) ϕ ( W ( …

Linux常用功能整合

Linux Linux 前言一、常用操作以及概念 快捷键求助关机PATHsudo包管理工具发行版VIM 三个模式GNU开源协议 二、磁盘 磁盘接口磁盘的文件名 三、分区 分区表开机检测程序 四、文件系统 分区与文件系统组成文件读取磁盘碎片blockinode目录日志挂载目录配置 五、文件 文件属性文件…