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

贡献法

lc891

sort,预处理2的幂次

计算每个元素作为子序列最大/最小值的贡献差之和

ans += long(pow2[i] - pow2[n - 1 - i]) * nums[i];

最终取模得到所有子序列宽度的总和

class Solution {
public:
int sumSubseqWidths(vector<int>& nums) {
constexpr int MOD = 1'000'000'007;
ranges::sort(nums);
int n = nums.size();
vector<int> pow2(n);
pow2[0] = 1;
for (int i = 1; i < n; i++) {
pow2[i] = pow2[i - 1] * 2 % MOD; // 预处理 2 的幂次
}


long long ans = 0;
for (int i = 0; i < n; i++) {
ans += long(pow2[i] - pow2[n - 1 - i]) * nums[i];// 在题目的数据范围下,这不会溢出
}
return (ans % MOD + MOD) % MOD; // 注意上面有减法,ans 可能为负数
}
};

太妙了==最开始陷在计算每一对pair的贡献,一直跳不出On2的陷阱qwq

http://www.jsqmd.com/news/220386/

相关文章:

  • 如何搭建一支搞垮公司的技术团队?!
  • Llama Factory微调实战:让通用大模型学会你的专业知识
  • CRNN OCR在会展行业的应用:名片自动识别与管理
  • Llama-Factory全家桶:微调、评估、部署的完整解决方案
  • 2026年远控软件真实体验报告,品牌十大排名揭晓,年度出圈爆款都在这
  • 用Sambert-HifiGan实现智能语音播报系统
  • MCP检测工具在工业自动化中的5个典型应用
  • 用PROMPT人工智能1小时打造可运行产品原型
  • 如何用AI快速生成高斯数据库查询工具
  • 对比传统方法:AI如何提升WEBVIEW2安装效率
  • 用IntelliJ IDEA快速构建微服务原型
  • Llama Factory+AutoML:自动化你的模型微调全过程
  • ECharts实战:构建疫情数据实时监控大屏
  • CRNN OCR与计算机视觉结合:从文字到场景理解
  • 十分钟搞定LLaMA-Factory微调:云端GPU镜像的便捷之道
  • 用MCJSCOOL在1小时内验证你的产品创意
  • C++部署OCR困难?改用Python镜像+API更高效
  • VIBECODING快速原型:1小时打造智能聊天机器人
  • Llama Factory竞技场:主流开源模型微调效果大比拼
  • AI如何帮你快速反编译Java代码?快马平台一键解析
  • CRNN OCR实战:构建智能文档处理流水线
  • CODEX安装效率对比:传统方式vs现代化工具
  • 青龙面板脚本库入门指南:小白也能轻松上手
  • 省钱秘籍:如何用Llama Factory按小时租赁GPU完成模型微调
  • 政务热线语音系统改造:开源TTS落地案例分享
  • 零配置玩转LLaMA-Factory:云端GPU镜像的魔力
  • 小白也能懂:图解HYPER-V冲突的检测与解决方法
  • IDEA 2025:AI如何重塑未来编程开发
  • 零基础入门CISP-PTE:从菜鸟到认证工程师的路径
  • 基于PHP、asp.net、java、Springboot、SSM、vue3的基于Django的农产品销售管理系统的设计与实现