news 2026/5/13 4:08:07

打卡信奥刷题(3251)用C++实现信奥题 P8590 『JROI-8』这是新历的朝阳,也是旧历的残阳

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(3251)用C++实现信奥题 P8590 『JROI-8』这是新历的朝阳,也是旧历的残阳

P8590 『JROI-8』这是新历的朝阳,也是旧历的残阳

题目背景

少女于海边伫立,凝视着落日最后的余晖
“已然过去了呢,旧历的一年…”

已获得转载授权。

题目描述

给定序列{an}\{a_n\}{an},满足每一项都不小于前一项。对于所有不超过kkk的正整数mmm,询问如果将aaa分成mmm段(可以有空段),并给从前往后第iii段内的每个数都加上iii,增加后的∑j=1naj2\sum\limits_{j=1}^n a_j^2j=1naj2最大是多少。询问相互独立,即每次询问时给每个数加的值不保留到下一次询问。

例如,对于序列{−3,1,2,2}\{-3,1,2,2\}{3,1,2,2},若m=5m=5m=5,则一种分段方式是[−3][][1,2][][2][-3][][1,2][][2][3][][1,2][][2],增加后的序列是−2,4,5,7-2,4,5,72,4,5,7,此时∑j=1naj2=94\sum\limits_{j=1}^n a_j^2=94j=1naj2=94

m=im=im=i时的答案(即此时最大的∑j=1naj2\sum\limits_{j=1}^n a_j^2j=1naj2)为qiq_iqi,出于良心考虑,你只需要输出(∑i=1kqi) mod 998244353\left(\sum\limits_{i=1}^k q_i\right) \bmod 998244353(i=1kqi)mod998244353即可。标准程序不基于特殊的输出方式,即能独立求出每一个qiq_iqi

输入格式

第一行两个正整数n,kn,kn,k,同题意。

接下来一行nnn个整数,表示{an}\{a_n\}{an}

输出格式

一行一个整数,表示(∑i=1kqi) mod 998244353\left(\sum\limits_{i=1}^k q_i\right) \bmod 998244353(i=1kqi)mod998244353

输入输出样例 #1

输入 #1

4 3 -3 1 2 2

输出 #1

141

说明/提示

【样例解释】

m=1m=1m=1时,最优策略是[−3,1,2,2][-3,1,2,2][3,1,2,2]q1=(−2)2+22+32+32=26q_1=(-2)^2+2^2+3^2+3^2=26q1=(2)2+22+32+32=26

m=2m=2m=2时,最优策略是[−3][1,2,2][-3][1,2,2][3][1,2,2]q2=(−2)2+32+42+42=45q_2=(-2)^2+3^2+4^2+4^2=45q2=(2)2+32+42+42=45

m=3m=3m=3时,最优策略是[−3][][1,2,2][-3][][1,2,2][3][][1,2,2]q3=(−2)2+42+52+52=70q_3=(-2)^2+4^2+5^2+5^2=70q3=(2)2+42+52+52=70

(∑i=1kqi) mod 998244353=(q1+q2+q3) mod 998244353=(26+45+70) mod 998244353=141\left(\sum\limits_{i=1}^k q_i\right) \bmod 998244353=(q_1+q_2+q_3)\bmod 998244353=(26+45+70)\bmod 998244353=141(i=1kqi)mod998244353=(q1+q2+q3)mod998244353=(26+45+70)mod998244353=141

【数据范围与约束】
测试点编号分数n≤n\leqnk≤k\leqk∣ai∣≤\lvert a_i\rvert \leqai特殊性质
1∼31\sim 313151515121212121212100010001000
4∼64\sim 646151515100010001000100010001000100010001000
7∼87\sim 87810101010610^610610610^610610710^7107ai≥0a_i\geq0ai0
9∼129 \sim 1291220202010610^610610001000100010710^7107
13∼2013\sim 20132040404010610^610610710^710710710^7107

C++实现

#include<bits/stdc++.h>#defineXD114514usingnamespacestd;intn,k;constintmod=998244353;longlonga[1000010],ans;intmain(){cin>>n>>k;for(inti=1;i<=n;i++){scanf("%lld",&a[i]);}for(inti=1;i<=k;i++){for(intj=1;j<=n;j++){if(abs(a[j]+1)>abs(a[j]+i)){//判断放最左面还是最右面ans+=(a[j]+1)*(a[j]+1);ans%=mod;}else{ans+=(a[j]+i)*(a[j]+i);ans%=mod;}}}cout<<ans;return0;}

后续

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

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

Clawcage:基于macOS硬件虚拟化的AI Agent安全沙盒设计与实践

1. 项目概述&#xff1a;为AI套上“笼子”的桌面沙盒 如果你和我一样&#xff0c;对当前AI Agent&#xff08;智能体&#xff09;的“野性”感到既兴奋又不安&#xff0c;那么Clawcage这个项目可能正是你需要的工具。简单来说&#xff0c;它是一个运行在macOS上的原生应用&…

作者头像 李华
网站建设 2026/5/13 4:06:04

5分钟上手Sunshine:打造家庭多设备游戏串流中心的完整指南

5分钟上手Sunshine&#xff1a;打造家庭多设备游戏串流中心的完整指南 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine是一款开源的自托管游戏串流服务器&#xff0c;能够…

作者头像 李华
网站建设 2026/5/13 4:00:08

DB-GPT:用自然语言对话数据库,Text-to-SQL实战与部署指南

1. 项目概述&#xff1a;当数据库遇上大语言模型最近几年&#xff0c;大语言模型&#xff08;LLM&#xff09;的火爆程度有目共睹&#xff0c;它正在重塑我们与信息交互的方式。但如果你是一名开发者、数据分析师或是运维工程师&#xff0c;可能会发现一个痛点&#xff1a;LLM虽…

作者头像 李华
网站建设 2026/5/13 3:59:05

零基础想学网络安全?初级入门教程一次性讲清

本篇文章给大家谈谈黑客技术零基础入门怎么学&#xff0c;以及黑客初级入门对应的知识点&#xff0c;希望对各位有所帮助。 本文目录一览&#xff1a; 1、黑客零基础入门 2、怎样自学黑客技术&#xff1f; 3、学习黑客需要先学习什么基础&#xff1f;&#xff08;零基础&…

作者头像 李华
网站建设 2026/5/13 3:59:04

渗透测试保姆级入门教程,零基础到精通一篇搞定

之前为大家分享过一些关于网络安全自学的关键点&#xff0c;比如“网络安全只有计算机高材生才能学&#xff1f;”“没有名校背景&#xff0c;根本进不了这个行业&#xff1f;”这些疑问。这次&#xff0c;我们阿一将为大家奉上一份更详细深入的学习指南&#xff0c;详细解析网…

作者头像 李华
网站建设 2026/5/13 3:51:43

项目介绍 MATLAB实现基于SCSO 沙猫群优化算法(SCSO)求解旅行商问题(含模型描述及部分示例代码)专栏近期有大量优惠 还请多多点一下关注 加油 谢谢 你的鼓励是我前行的动力 谢谢支持 加油

MATLAB实现基于SCSO 沙猫群优化算法&#xff08;SCSO&#xff09;求解旅行商问题的详细项目实例 请注意此篇内容只是一个项目介绍 更多详细内容可直接联系博主本人 或者访问对应标题的完整博客或者文档下载页面&#xff08;含完整的程序&#xff0c;GUI设计和代码详解&#…

作者头像 李华