CF351E Jeff and Permutation 题解

news2024/11/28 4:50:35

#1024程序员节|征文#

人生中的第一道紫题。。。


​​​​​​题目传送门

解题思路

首先我们可以得到读入时 $a_i$ 的正负不影响答案,因为我们可以进行一次操作将它们变成它们的相反数,从而使其变成原数,因此,我们可以将 $a_i$ 取绝对值。

我们让 $1\le i < j \le n$,那么会有三种情况:

  •  $a_i > a_j$,如果想要制造出逆序对,要么 $a_i,a_j$ 都不变成相反数,要么只有 $a_j$ 变成相反数。
  •  $a_i < a_j$,如果想要制造出逆序对,要么 $a_i,a_j$ 都变成相反数,要么只有 $a_j$ 变成相反数。
  •  $a_i = a_j$,如果想要制造出逆序对,只能够 $a_j$ 变成相反数。

因此,我们只需要取它变成相反数时与没变成相反数时的最小答案即可。

感谢 @奇米 的题解给作者提供了思路。

CODE:
 

#include <bits/stdc++.h>
using namespace std;
#define int long long
int n, a[2010];
signed main() {
    ios::sync_with_stdio(false);
    ios_base::sync_with_stdio(false);
    cin.tie(0), cout.tie(0);
    cin >> n;
    int ans = 0;
    for (int i = 1; i <= n; i++)
        cin >> a[i], a[i] = abs(a[i]);
    for (register int i = n; i >= 1; i--) {
        int cnt = 0, res = 0;
        for (register int j = 1; j < i; j++)
            if (a[j] < a[i])
                cnt++;
        for (register int j = i + 1; j <= n; j++)
            if (a[j] < a[i])
                res++;
        ans += min(res, cnt);
    }
    cout << ans;
    return 0;
}

后记

笑死,模拟赛的时候没有想到,但是赛后看了题解感觉好简单啊,话说 10 月 26 日就是 CSP2024 的复赛了,涨涨 rp。

这个萌新 CSP-J 2022 T2 没有切出来,T3 骗分没骗到,T4 随机数骗了 5 分。当年一等分数线为 225,如果 100+100+20+5 就可以刚好一等了。

这个小白 CSP-S 2023 初赛没过,这虽然是第一次参加 S 的初赛,但是所有题目长的题我都没有耐心去读,随便填一个就完事,所以离初赛分数线还差 10 分。CSP-J 2023 T3 硬要写部分分优化(题目没读懂,当时不会 \Delta),结果优化错了。。。导致 50 \to 20,最后一等分数线为 250,如果 100+100+50+5 就可以一等了。

这个蒟蒻 CSP-J/S 2024 初赛全过,但是 S 很多题目还是不会,愿我佛保佑我一等。CSP-J 2024 预估分数 300(但愿),CSP-S 2024 预估分数 150(愿上天保佑)。

快祝我 rp += +\infty!

哦哦,今天还是 2^{10} 纪念日。

本蒟蒻祝各位神犇大佬 10 月 24 日快乐!

哦哦,差点忘掉了什么。

祝 CSDN 节日快乐!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2222546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

项目篇--Maven+Idea+ PrimeFaces+Jsf--项目搭建

文章目录 前言一、PrimeFaces 和 Jsf&#xff1a;1.1 JSF 基础&#xff1a;1.2 PrimeFaces 扩展&#xff1a; 二、项目搭建&#xff1a;2.1 Maven 项目的创建&#xff1a;2 xml 配置&#xff1a;2.1 pom.xml 配置2.2web.xml 配置&#xff1a; 2.3 代码&#xff1a;2.3.1 页面&a…

(六)STM32F407 cubemx MPU6050通讯硬件寄存器配置部分(2)

这篇文章主要是个人的学习经验&#xff0c;想分享出来供大家提供思路&#xff0c;如果其中有不足之处请批评指正哈。废话不多说直接开始主题&#xff0c;本人是基于STM32F407VET6芯片&#xff0c;但是意在你看懂这篇文章后&#xff0c;不管是F1,F4,H7等一系列MPU6050通讯硬件寄…

Redis学习笔记(六)--Redis底层数据结构之集合的实现原理

文章目录 一、两种实现的选择二、ziplist1、head2、entries3、end 三、listPack1、head2、entries3、end 四、skipList1、skipList原理2、存在的问题3、算法优化 五、quickList1、检索操作2、插入操作3、删除操作 六、key与value中元素的数量 本文参考&#xff1a; Redis学习汇…

从天边的北斗到身边的北斗 —— 探索北斗导航系统的非凡之旅

引言&#xff1a;穿越时空的导航奇迹 在浩瀚的夜空之中&#xff0c;北斗七星以其独特的排列&#xff0c;自古以来便是指引方向的天文坐标。而今&#xff0c;这份古老的智慧与现代科技完美融合&#xff0c;化作了覆盖全球的卫星导航系统——中国北斗。从遥远的星河到触手可及的…

不考虑光影、背景、装饰,你的可视化大屏摆脱不了平淡。

如果在可视化大屏的设计中不考虑光影、背景和装饰&#xff0c;确实难以摆脱平淡。光影效果可以为大屏增添立体感和层次感&#xff0c;吸引观众的注意力。 合适的背景能营造出特定的氛围&#xff0c;使数据展示更具情境感。而装饰元素则可以起到点缀和美化的作用&#xff0c;提…

【无标题】unity, 在编辑界面中隐藏公开变量和现实私有变量

1.unity, 在编辑界面中隐藏公开变量 [HideInInspector]public int Num; 2.[SerializeField]反序列化显示私有变量 SerializeField是Unity引擎中的一个特性&#xff0c;用于使私有变量在Inspector中可见并可编辑 [SerializeField] private int time; 实例效果如下图示&…

Xshell删除键不好使:删除显示退格^H

1、问题&#xff1a; Xshell不能删除&#xff0c;删除时出现 退格^H 2、解决方案&#xff1a; 点击上方&#xff1a;文件→属性→终端→键盘&#xff0c;把 delete 和 backspace 序列改为 ASCII 127即可。如下所示&#xff1a; 3、重启Xshell&#xff0c;即可以删除了。

UE5 射线折射

这个判断是否有标签是需要带有此标签的Actor来反射

基础知识 main函数形参 C语言

main函数完整的函数头&#xff1a;int main(int argc,char *argv[]) 或 int main(int argc,char **argv)arg-----argument参数c -----count个数v -----value值、内容 假设命令行上运行一个程序的命令如下&#xff1a;./test abc def 123 则test这个程序的main函数第一个…

论当前的云计算

随着技术的不断进步和数字化转型的加速&#xff0c;云计算已经成为当今信息技术领域的重要支柱。本文将探讨当前云计算的发展现状、市场趋势、技术革新以及面临的挑战与机遇。 云计算的发展现状 云计算&#xff0c;作为一种通过网络提供可伸缩的、按需分配的计算资源服务模式&a…

【AIGC】优化长提示词Prompt:提升ChatGPT输出内容的准确性与实用性

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | ChatGPT 文章目录 &#x1f4af;前言&#x1f4af;长提示词的挑战&#x1f4af;谷歌的优化长提示词技术关键因素分析 &#x1f4af;长提示词的设计原则&#x1f4af;优化长提示词的新框架方法&#x1f4af;实验结果分析不…

PostgreSQL的前世今生

PostgreSQL的起源可以追溯到1977年的加州大学伯克利分校&#xff08;UC Berkeley&#xff09;的Ingres项目。该项目由著名的数据库科学家Michael Stonebraker领导&#xff0c;他是2015年图灵奖的获得者。以下是PostgreSQL起源的详细概述&#xff1a; 一、早期发展 Ingres项目…

【正点原子K210连载】第四十七章 MNIST实验 摘自【正点原子】DNK210使用指南-CanMV版指南

第四十七章 MNIST实验 在上一章节中&#xff0c;介绍了利用maix.KPU模块实现了车牌的检测和识别&#xff0c;本章将继续介绍利用maix.KPU模块实现的MNIST识别。通过本章的学习&#xff0c;读者将学习到MNIST识别应用在CanMV上的实现。 本章分为如下几个小节&#xff1a; 47.1 …

058_基于python时尚女装抖音号评论数据分析系统

目录 系统展示 开发背景 代码实现 项目案例 获取源码 博主介绍&#xff1a;CodeMentor毕业设计领航者、全网关注者30W群落&#xff0c;InfoQ特邀专栏作家、技术博客领航者、InfoQ新星培育计划导师、Web开发领域杰出贡献者&#xff0c;博客领航之星、开发者头条/腾讯云/AW…

国外白帽故事 | 攻破大学数据库系统,暴露数千学生记录

引言 在这篇文章中&#xff0c;我将分享我是如何攻破一个大型大学解决方案门户服务器的&#xff0c;这个服务器服务于许多大学客户&#xff0c;并且涉及数千名学生的数据。 目标 这是一个由印度许多大学和学院使用的门户网站&#xff0c;用于管理学生记录、成绩单、出勤记录…

【JavaEE】——四次挥手,TCP状态转换,滑动窗口,流量控制

阿华代码&#xff0c;不是逆风&#xff0c;就是我疯 你们的点赞收藏是我前进最大的动力&#xff01;&#xff01; 希望本文内容能够帮助到你&#xff01;&#xff01; 目录 一&#xff1a;断开连接的本质 二&#xff1a;四次挥手 1&#xff1a;FIN 2&#xff1a;过程梳理 …

MacOS RocketMQ安装

MacOS RocketMQ安装 文章目录 MacOS RocketMQ安装一、下载二、安装修改JVM参数启动关闭测试关闭测试测试收发消息运行自带的生产者测试类运行自带的消费者测试类参考博客&#xff1a;https://blog.csdn.net/zhiyikeji/article/details/140911649 一、下载 打开官网&#xff0c;…

华为云容器引擎(CCE):赋能企业云原生转型

在当今数字化时代&#xff0c;企业面临着日益复杂的应用部署和管理挑战。为了解决这些问题&#xff0c;容器技术应运而生&#xff0c;成为云原生架构的核心。华为云容器引擎&#xff08;CCE&#xff09;作为一款全面的容器管理解决方案&#xff0c;旨在帮助企业实现高效、灵活的…

Linux终端之旅: 打包和压缩

在 Linux 世界中&#xff0c;打包和压缩文件是管理系统资源、传输数据和备份的重要技能。通过命令行工具如 tar、gzip、zip 等&#xff0c;我们可以高效地将多个文件或目录打包为一个文件&#xff0c;并通过压缩减少其体积。接下来&#xff0c;我将记录学习如何利用这些工具&am…

SpringBoot3响应式编程全套-Spring Security Reactive

目录 传送门前言一、整合二、开发1、应用安全2、RBAC权限模型 三、认证1、静态资源放行2、其他请求需要登录 四、授权 传送门 SpringMVC的源码解析&#xff08;精品&#xff09; Spring6的源码解析&#xff08;精品&#xff09; SpringBoot3框架&#xff08;精品&#xff09; …