当前位置: 首页 > news >正文

求大神帮我看看这个代码有什么问题吗

20 数学奇才

【难度: 简单,标签: 贪心,通过率: 71.6%】

20.1 问题描述

你是一位数学奇才,但却被困在了神秘的数字王国中。在你面前,摆放着一串神奇的数字,它们组成了一个长度为 n 的序列,记作 a。你的使命是利用你特殊的能力,最大化序列中所有数字的总和,但是有一个限制:你只能进行不超过 n 次操作^{20}。

那么,你的特殊能力是什么呢?嗯,你可以选择序列中的某一段连续的数字,然后将它们变为自身的相反数。举个例子,假设你选择了位置 i,那么 a_1,a_2,\dots,a_i 中的每个数字都会乘以 -1。

^{20}参见https://www.lanqiao.cn/problems/16991/learning/?page=5&first_category_id=1&second_category_id=15

现在,你需要巧妙运用你的能力,设计一种操作方案,使得经过不超过 n 次操作后,序列 a 中所有数字的总和尽可能大。请计算出这个最大的总和是多少?!

20.2 输入格式

第一行包含一个整数 n,表示序列 a 的长度 (1 \le n \le 10^5)。

第二行包含 n 个整数 a_1,a_2,\dots,a_n,表示序列 a 中的元素 (-10^9 \le a_i \le 10^9)。

20.3 输出格式

输出一个整数,表示经过不超过 n 次操作后,序列 a 中所有数字的最大总和。

20.4 样例输入

plaintext

3

-1 -2 3

20.5 样例输出

plaintext

6

20.6 样例说明

一种最优的操作方案是:选择位置2,将序列变为 [1,2,3]。这样一来,序列中所有数字的总和为 1+2+3=6,显然,不会有比这更大的数字总和了。

20.7 评测数据规模

对于所有测评数据,1 \le n \le 10^5,-10^9 \le a_i \le 10^9。

#include <stdio.h>

#include <stdlib.h>

long long maxsum(int n, int a[]) {

for (int i = n - 1; i >= 0; i--) {

if (a[i] < 0) {

for (int j = 0; j <= i; j++) {

a[j] = -a[j];

}

}

}

long long sum = 0;

for (int i = 0; i < n; i++) {

sum += a[i];

}

return sum;

}

int main() {

int n;

scanf("%d", &n);

int *a = (int *)malloc(n * sizeof(int));

for (int i = 0; i < n; i++) {

scanf("%d", &a[i]);

}

long long ans = maxsum(n, a);

printf("%lld\n", ans);

free(a);

return 0;

}这个代码对吗?能保证操作次数不超过n吗

http://www.rkmt.cn/news/1417952.html

相关文章:

  • 2026年5月天津装修设计获客机构哪家好?优质厂家推荐与选择指南 - 海棠依旧大
  • 运算放大器比较器电路:从原理到实战调试指南
  • 从Widlar电流源到带隙基准:一个经典结构的‘前世今生’与设计启示
  • iPaaS平台有哪些?五大主流产品核心特点解析
  • 告别栅格!用Sen+MK方法分析气象站/水质监测点数据的完整流程(Python实战)
  • 洞察2026年当前山西仓库门市场:知名企业实力推荐与选型指南 - 2026年企业资讯
  • Arm Compiler FuSa 6.16LTS文档解析与安全开发实践
  • 比话降AI率靠谱吗?2026年知网AI率15%退款承诺实测分析
  • 2026年|亲测DeepSeek四大降AI提示词:将论文AI率从90%降至5%(附详细指令)
  • 谁是性价比之王?8款AI论文平台排行榜,毕业无忧秘籍!
  • Java 文件学习
  • 【MATLAB】自适应滤波与噪声抑制算法仿真实现
  • 如何实现浏览器端音乐文件解密:Unlock-Music开源项目深度解析
  • 基于Arduino的反应速度测试器:从硬件设计到代码实现的完整指南
  • 10个全栈聚合平台项目实战:AI提示词与架构设计指南
  • 这次终于选对了!盘点2026年抢手爆款的一键生成论文工具
  • 如何3秒获取百度网盘提取码:智能查询工具baidupankey终极教程
  • 中小商家的客服神器!开源、免费、可私有部署——CRMChat 技术架构全拆解
  • 告别调包侠:用Librosa从零处理音频信号,手把手教你提取MFCC和梅尔谱图
  • Vulkan多线程追踪文件转单线程的实践指南
  • RAG技术栈全解:从Embedding模型到Milvus部署,7个核心组件撑起企业级知识库
  • Python 文件与目录自动化实战:os、pathlib、shutil 从入门到精通
  • Arduino智能助眠音箱DIY:从DFPlayer模块驯服到PCB实战
  • Honor of Kings 2026.05.24 S43 [15.9][15.8]
  • 8051 PDATA内存访问机制与Keil µVision仿真解析
  • 新手教程使用 Python 快速调用 Taotoken 上的多款大模型
  • GD32F450 USB主机模式避坑指南:从STM32库移植到稳定读取U盘的全过程记录
  • 【统计法规】2.3统计地方性法规
  • 在arm7设备上观测大模型API调用的延迟与Token消耗情况
  • 搭载实时 FPGA 处理系统的航天器上用于海上监视的超分辨率YOLO目标检测技术(意大利2026年研究)