news 2026/5/17 1:39:02

打卡信奥刷题(3270)用C++实现信奥题 P8848 [JRKSJ R5] 1-1 B

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(3270)用C++实现信奥题 P8848 [JRKSJ R5] 1-1 B

P8848 [JRKSJ R5] 1-1 B

题目背景

本题是 1-1 的较难版本,较易版本为 1-1 A。

题目描述

给出一个序列a aa∀ i ∈ [ 1 , n ] , a i ∈ { 1 , − 1 } \forall i\in [1,n],a_i\in \{1,-1\}i[1,n],ai{1,1}

询问有多少个将a aa重排后的序列使得该序列的最大子段和最小化。

称两个序列不同,当且仅当这两个序列有任意一个位置上的数不同。

输入格式

第一行一个整数n nn

第二行n nn个整数表示a aa

输出格式

一个整数表示答案。答案对998244353 998244353998244353取模。

输入输出样例 #1

输入 #1

4 1 -1 1 -1

输出 #1

3

输入输出样例 #2

输入 #2

5 1 1 1 -1 1

输出 #2

3

输入输出样例 #3

输入 #3

10 1 1 1 1 1 1 1 -1 -1 -1

输出 #3

40

说明/提示

最大子段和的定义:序列中一段区间的和的最大值。即max ⁡ 1 ≤ l ≤ r ≤ n ∑ i = l r a i \max_{1\le l\le r\le n} \sum_{i=l}^r a_imax1lrni=lrai

数据规模

本题采用捆绑测试。

Subtask \text{Subtask}Subtaskn ≤ n\lenScore \text{Score}Score
1 1110 101020 2020
2 22100 10010020 2020
3 33500 50050020 2020
4 4410 4 10^410440 4040

对于100 % 100\%100%的数据,1 ≤ n ≤ 10 4 1\le n\le 10^41n104a i ∈ { 1 , − 1 } a_i\in \{1,-1\}ai{1,1}

C++实现

#include<bits/stdc++.h>usingnamespacestd;constintN=10086;constintmod=998244353;typedeflonglongll;intn,cp=0,cq=0;vector<int>a[N];signedmain(){intx;scanf("%d",&n);for(inti=1;i<=n;i++)scanf("%d",&x),x==1?cp++:cq++;intm=cp-cq;if(m>0){for(inti=0;i<=cq;i++)for(intj=0;j<=m;j++){ints=0;if(i&&j!=m)s+=a[i-1][j+1];if(j)s+=a[i][j-1];a[i].push_back(i||j?s%mod:1);}printf("%d",a[cq][m]);}else{for(inti=0;i<=1-m;i++)for(intj=0;j<=cp;j++){ints=0;if(i)s+=a[i-1][j];if(j)s+=a[i][j-1];a[i].push_back(i||j?s%mod:1);}printf("%d",a[1-m][cp]);}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/17 1:36:05

SDEP协议解析与Adafruit WICED Feather物联网开发实战

1. 项目概述&#xff1a;当物联网设备学会“发推文”几年前&#xff0c;当我第一次尝试让一块小小的开发板连上互联网并自动发布一条状态时&#xff0c;整个过程充满了各种“魔法”般的配置文件和令人困惑的底层协议。如今&#xff0c;像Adafruit WICED Feather这样的平台&…

作者头像 李华
网站建设 2026/5/17 1:29:39

M公司摩托车缸头生产线平衡优化【附案例】

✨ 长期致力于5W1H、ECRS原则、6S管理、灰狼算法、模拟退火改进灰狼算法研究工作&#xff0c;擅长数据搜集与处理、建模仿真、程序编写、仿真设计。 ✅ 专业定制毕设、代码 ✅ 如需沟通交流&#xff0c;点击《获取方式》 &#xff08;1&#xff09;基础工业工程方法与现场改善实…

作者头像 李华
网站建设 2026/5/17 1:28:01

用DBoW3和OpenCV ORB特征,手把手教你搭建一个简易的视觉回环检测系统

基于DBoW3与ORB特征的视觉回环检测实战指南 视觉回环检测是SLAM系统中的关键模块&#xff0c;它能有效解决长期运行时产生的累积误差问题。本文将带你从零构建一个完整的回环检测系统&#xff0c;使用OpenCV提取ORB特征&#xff0c;并通过DBoW3库实现高效的图像匹配。 1. 环境配…

作者头像 李华
网站建设 2026/5/17 1:24:02

Logic Pro 怎么导出 MP3?超详细导出教程(2026最新版)一文搞定!

本文来源于可乐原创音乐&#xff0c;转载请注明出处。 前言 很多人第一次用 Logic Pro 做完一首歌&#xff0c;兴冲冲想导出 MP3 发给朋友听&#xff0c;却发现找不到导出按钮&#xff0c;或者导出来的格式不对、音质有问题…… 这是新手最容易卡住的环节之一。 本文将从最基…

作者头像 李华
网站建设 2026/5/17 1:20:17

Bootstrap5 Jumbotron 深入解析

Bootstrap5 Jumbotron 深入解析 Bootstrap 是一个流行的开源前端框架,用于快速构建响应式、移动优先的网站和应用程序。Bootstrap5 是 Bootstrap 的最新版本,它引入了许多新的特性和改进。其中,Jumbotron 组件是一个重要的组成部分,用于在网页上创建引人注目的首屏展示。本…

作者头像 李华
网站建设 2026/5/17 1:18:35

FadCam: 开源隐私优先的多媒体录制工具

FadCam: 开源隐私优先的多媒体录制工具 项目简介 在现代社会中&#xff0c;隐私和数据安全变得越来越重要。FadCam是一个专注于用户隐私、无广告的开源Android多媒体录制应用&#xff0c;具有背景视频录制、屏幕录制、实时直播和远程摄像头控制等多种强大功能。这款应用为用户…

作者头像 李华