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

CF1909_C. Heavy Intervals题解

CF1909_C. Heavy Intervals题解

题目传送门(Problem - C - CodeforcesCodeforces. Programming competitions and contests, programming communityicon-default.png?t=N7T8https://codeforces.com/contest/1909/problem/C)。

题目翻译如下:(图片来源:洛谷)

这题已经出的很直了……可能也有暴力做法,大家可以尝逝,我直接将数论方法。

先给亿点前置芝士(排序不等式):

通俗来讲,就是对于两个有序序列,顺序之积之和大于等于乱序之积之和大于逆序之积之和。

我都知道你们在想什么,下面来到了大家喜闻乐见的Ctrl+C/V环节,AC Code走起!

#include<bits/stdc++.h>
#define N 110000
using namespace std;
multiset<int>tl={};
int a[N]={},c[N]={},l[N]={},r[N]={},n=0,t=0;
int main(){
    scanf("%d",&t);
    while(t--){
        scanf("%d",&n);
        tl.clear();
        for(int i=1;i<=n;i++){
            scanf("%d",&l[i]);
            tl.insert(l[i]);
        }
        for(int i=1;i<=n;i++){
            scanf("%d",&r[i]);
        }
        for(int i=1;i<=n;i++){
            scanf("%d",&c[i]);
        }
        sort(r+1,r+1+n);
        for(int i=1;i<=n;i++){
            auto id=tl.lower_bound(r[i]);
            id--;
            a[i]=r[i]-(*id);
            tl.erase(id);
        }
        sort(a+1,a+1+n);
        sort(c+1,c+1+n);
        long long ans=0;
        for(int i=1;i<=n;i++){
            ans+=a[i]*1LL*c[n-i+1];
        }
        printf("%lld\n",ans);
    }
    return 0;
}

感谢我这个大好人!没登录的人也可以复制哦!

#include<bits/stdc++.h>
#define N 110000
using namespace std;
multiset<int>tl={};
int a[N]={},c[N]={},l[N]={},r[N]={},n=0,t=0;
int main(){scanf("%d",&t);while(t--){scanf("%d",&n);tl.clear();for(int i=1;i<=n;i++){scanf("%d",&l[i]);tl.insert(l[i]);}for(int i=1;i<=n;i++){scanf("%d",&r[i]);}for(int i=1;i<=n;i++){scanf("%d",&c[i]);}sort(r+1,r+1+n);for(int i=1;i<=n;i++){auto id=tl.lower_bound(r[i]);id--;a[i]=r[i]-(*id);tl.erase(id);}sort(a+1,a+1+n);sort(c+1,c+1+n);long long ans=0;for(int i=1;i<=n;i++){ans+=a[i]*1LL*c[n-i+1];}printf("%lld\n",ans);}return 0;
}

当然登录了是更快捷的。

时间复杂度O(n*log(n)),完全能过。

代码有亿点长,说点注意事项:

①long long问题。

②lower_bound要用multiset里封装的,不要用单独的函数(这样会退化成O(n))。

相关文章:

CF1909_C. Heavy Intervals题解

CF1909_C. Heavy Intervals题解 题目传送门&#xff08;Problem - C - CodeforcesCodeforces. Programming competitions and contests, programming communityhttps://codeforces.com/contest/1909/problem/C&#xff09;。 题目翻译如下&#xff1a;&#xff08;图片来源&a…...

【Python机器学习】理论知识:决策树

决策树是广泛用于分类和回归任务的模型&#xff0c;本质上是从一层层if/else问题中进行学习&#xff0c;并得出结论。这些问题类似于“是不是”中可能问到的问题。 决策树的每个结点代表一个问题或一个包含答案的终结点&#xff08;叶结点&#xff09;。树的边奖问题的答案与将…...

天软特色因子看板 (2024.01 第2期)

该因子看板跟踪天软特色因子A04001(当日趋势强度)&#xff0c;该因子为反映股价走势趋势强弱&#xff0c;用以反映股价走势趋势强弱&#xff0c;abs(值)越接近1&#xff0c;趋势 性越强&#xff0c;符号代表涨跌方向 今日为该因子跟踪第2期&#xff0c;跟踪其在SH000905 (中证5…...

java智慧医院互联网智慧3D导诊系统源码,经由智慧导诊系统多维度计算,准确推荐科室

什么是智慧导诊系统? 简单地说&#xff0c;智慧导诊系统是一种利用人工智能技术&#xff0c;为医生提供帮助的系统。它可以通过分析患者的症状和病史为医生提供疾病诊断和治疗方案的建议。 系统介绍&#xff1a; 医院智慧导诊系统是在医院中使用的引导患者自助就诊挂号&…...

WiFi7: MLD寻址

原文:MLD使用MLD MAC address唯一的标识本MLD。 MLD下的STA(s)使用与之不同的MAC address。 NOTE MLD MAC address可以和其下的某个STA的MAC address相同或者不同于任一MAC Address。 原文:对于individually addressed 帧。以下规则适用: Address 2(TA)设置为STA的MAC Add…...

laravel-admin之 浏览器自动填充密码(如果需要渲染数据库密码的话,首先确认数据库密码是否可以逆向解密)

参考 https://blog.51cto.com/u_10401840/5180106 为什么浏览器端保存的密码一直自动写入到$form->password 解决办法 2、在页面进入的时候&#xff0c;默认表单的type值为text&#xff1b;推荐指数&#xff1a;2颗星 5、设置表单的readonly属性;推荐指数&#xff1a;4颗…...

jquery图形验证码

效果展示 js图形随机验证码&#xff08;表单验证&#xff09; html代码片段 <form class"formwrap"><div class"item"><input type"text" id"code_input" value"" placeholder"请输入验证码"/>…...

dp专题10 目标和

本题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 题目&#xff1a; 思路&#xff1a; 根据这道题&#xff0c;可以通过暴力的方法进行取 号或者 - 号 两个操作&#xff0c;通过当刚好得到 target 的时候 答案 1&#xff0c;但是通过长度是 20 &#xff0c;操…...

详解 docker 镜像制作的两种方式

概要 制作Docker镜像一般有2种方法&#xff1a; 通过Dockerfile&#xff0c;完成镜像的创建使用仓库中已有的镜像&#xff0c;安装自己使用的软件环境后完成新镜像创建 docker 常用命令 docker build: 用于构建 Docker 镜像。该命令可以从 Dockerfile 构建镜像&#xff0c;…...

selenium元素单击不稳定解决方法

selenium自动化测试过程中&#xff0c;经常会发现某一元素单击&#xff0c;很不稳定&#xff0c;有时候执行了点击没有反映。 以下总结两种解决方法&#xff1a;都是通过js注入的方式去点击。 1.F12查一看&#xff0c;要点击的按钮&#xff0c;或连接&#xff0c;有没有οncl…...

vue3中vite使用sass

引用&#xff1a;https://blog.csdn.net/weiliang_66/article/details/132469597 npm install sass -d配置vite.config.js: css: {preprocessorOptions: {scss: {additionalData:import "/assets/styles/main.scss";}}}创建对应的 main.sass...

centos 8.0 安装sysbench 1.0.17

序号步骤说明执行命令执行结果备注1 下载并解压sysbench-1.0.17.zip sysbench-1.0.17.zip2安装依赖文件 yum install automake libtool -y yum install /usr/include/libpq-fe.h 3安装sysbench cd sysbench-1.0.17 ./autogen.sh ./configure \ --prefix/sysbench \ --with-pgsq…...

LabVIEW开发分布式光纤油气管道泄漏检测及预警系统

LabVIEW开发分布式光纤油气管道泄漏检测及预警系统 随着油气工业的发展&#xff0c;管道泄漏成为一个严峻的安全问题。本文介绍了一种基于LabVIEW的分布式光纤油气管道泄漏检测及预警系统的设计思路和组成结构。系统包括硬件和软件两部分&#xff0c;其中硬件部分详细阐述了分…...

Go后端开发 -- Go Modules

Go后端开发 – Go Modules 文章目录 Go后端开发 -- Go Modules一、什么是Go Modules?二、GOPATH的工作模式1.GOPATH模式2.GOPATH模式的弊端 三、Go Modules模式创建项目1.go mod命令2.go mod环境变量3.使用Go Modules初始化项目4.修改模块的版本依赖关系 四、Go Modules下impo…...

基于det_keypoint_unite的ROS功能包(jetson部署)

文章目录 硬件软件FastDeploy编译CMakeLists.txt头文件源代码硬件 Jetson AGX Orin 64GB 软件 gcc/g++ >= 5.4(推荐8.2)cmake >= 3.10.0jetpack >= 4.6.1opencv=4.2.0FastDeploy编译 git clone https://github.com/PaddlePaddle/FastDeploy.git cd FastDeploy mkdi…...

TS 36.211 V12.0.0-下行(8)-调制和上变频

本文的内容主要涉及TS 36.211&#xff0c;版本是C00&#xff0c;也就是V12.0.0。...

基于SSM酒店后台管理系统【源码】【最详细运行文档】

基于SSM酒店后台管理系统【源码】【最详细运行文档】 功能简介技术描述运行准备♝项目运行访问项目 演示图✅源码获取 &#x1f4a1; 「分享」 大家好&#xff0c;最近几年在酒店后台管理系统非常流行&#xff0c;无论是上课的项目或者是一些毕设都会以酒店后台管理系统举例说…...

利用Python实现每日新闻早报推送

本文将介绍如何使用Python编写简单的逻辑&#xff0c;通过调用API接口实现每日新闻推送功能。 步骤&#xff1a; 导入所需的库&#xff1a; 在代码的开头&#xff0c;我们需要导入所需的库。通常&#xff0c;我们会使用requests库来发送HTTP请求&#xff0c;以获取新闻数据。 …...

图像分割-Grabcut法

版权声明&#xff1a;本文为博主原创文章&#xff0c;转载请在显著位置标明本文出处以及作者网名&#xff0c;未经作者允许不得用于商业目的。 本文的C#版本请访问&#xff1a;图像分割-Grabcut法(C#)-CSDN博客 GrabCut是一种基于图像分割的技术&#xff0c;它可以用于将图像…...

性能测试浅谈

早期的性能测试更关注后端服务的处理能力。 一个用户去访问一个页面的请求过程&#xff0c;如上图。 数据传输时间 当你从浏览器输入网址&#xff0c;敲下回车&#xff0c;开始... 真实的用户场景请不要忽视数据传输时间&#xff0c;想想你给远方的朋友写信&#xff0c;信件需…...

5分钟搞定OpenClaw+nanobot:超轻量级AI助手一键部署指南

5分钟搞定OpenClawnanobot&#xff1a;超轻量级AI助手一键部署指南 1. 为什么选择OpenClawnanobot组合 上周我在整理电脑上的项目文档时&#xff0c;突然意识到自己每天要重复执行大量机械操作&#xff1a;查找文件、转换格式、汇总数据。作为独立开发者&#xff0c;这些琐事…...

2021年中国村级行政区划边界矢量数据|行政村 + 社区|全国60万+单元|SHP格式、WGS84坐标

&#x1f50d; 数据简介 本数据集 2021年左右的中国村级行政区划边界矢量数据。 总计 超60万个村级单元&#xff0c;是目前公开可获取的最精细、最权威的全国村级边界数据之一&#xff0c;适用于乡村振兴、基层治理、人口空间化、公共服务设施布局、学术研究等高精度需求场景。…...

【Git技巧】git rebase -i 实战:轻松合并本地提交记录

1. 为什么你需要掌握git rebase -i 每次写完代码提交时&#xff0c;你是不是也经常遇到这种情况&#xff1a;刚提交完就发现有个拼写错误&#xff0c;赶紧又提交一次&#xff1b;或者调试过程中反复提交了好几次"临时保存"。结果git log一看&#xff0c;提交记录乱七…...

如何实现SASM多语言支持:完整国际化配置与翻译指南

如何实现SASM多语言支持&#xff1a;完整国际化配置与翻译指南 【免费下载链接】SASM SASM - simple crossplatform IDE for NASM, MASM, GAS and FASM assembly languages 项目地址: https://gitcode.com/gh_mirrors/sa/SASM SASM&#xff08;Simple Assembler IDE&…...

3.23-3.25笔记

这期实现温湿度采集、光照强度监测、智能设备控制&#xff08;加湿器、PWM 调光 LED、PWM 调速风扇&#xff09;确定引脚&#xff0c;根据原理图找出可以使用的引脚开关。根据手册信息PWM口GPIO0_D0和GPIO0_C6&#xff0c;把设备树GPIO0_D0做5G的复位disable&#xff0c;再加入…...

Android音频输出流实战:从AudioFlinger到HAL层的完整调用链解析

Android音频输出流深度解析&#xff1a;从框架设计到硬件交互 1. Android音频系统架构概览 Android音频子系统采用分层设计&#xff0c;每一层都有明确的职责划分。理解这个架构是分析音频输出流的基础。 核心层级结构&#xff1a; 应用层&#xff1a;通过AudioTrack、MediaPla…...

Spring Boot 3.0 + Vue 3 实战:手把手教你搭建图书管理系统(附完整源码)

Spring Boot 3.0 Vue 3 全栈实战&#xff1a;现代化图书管理系统开发指南 在当今快速发展的互联网时代&#xff0c;掌握前后端分离开发技术已成为中级开发者必备的核心竞争力。本文将带你从零开始&#xff0c;使用Spring Boot 3.0和Vue 3这两个当下最热门的技术栈&#xff0c;…...

FGF-21蛋白的代谢调控机制与临床转化前景

一、引言成纤维细胞生长因子21&#xff08;FGF-21&#xff09;是成纤维细胞生长因子家族中的一种内分泌代谢调节因子。自其被发现以来&#xff0c;该蛋白因其在糖脂代谢、能量稳态调控及胰岛素敏感性改善等方面的独特作用&#xff0c;逐渐成为代谢性疾病研究领域的前沿热点。与…...

高效转换CSDN博客为Markdown:自动化工具与批量处理技巧

1. 为什么需要将CSDN博客转为Markdown格式 作为一个写了多年技术博客的老鸟&#xff0c;我深刻理解Markdown格式对技术写作的重要性。CSDN的富文本编辑器虽然方便&#xff0c;但存在几个致命问题&#xff1a;格式锁定在平台内、排版灵活性差、迁移成本高。而Markdown作为轻量级…...

VAP;SNTRVAP

一、基本信息名称&#xff1a;VAP peptide单字母序列&#xff1a;SNTRVAP三字母序列&#xff1a;Ser-Asn-Thr-Arg-Val-Ala-Pro长度&#xff1a;7 个氨基酸&#xff08;7‑mer&#xff09;类型&#xff1a;线性多肽&#xff0c;无 Cys、无 Met、无 Trp&#xff0c;氧化稳定性极佳…...