CF903 D.Almost Difference

news/2024/10/24 4:42:43/

题目链接:http://codeforces.com/problemset/problem/903/D
题目大意:给你n个数a1,a2,…,an,然后在1到n范围内求函数d(x,y)的和。
这道题可以这么想,就是先不考虑x,y的大小关系,直接认为d(x,y)= y - x
记最后结果为sum,那么sum = ∑d(x,y)=a2 - a1 + a3 - a1 + a3 - a2 + … +an - an-1 ,
即sum = ∑d(x,y)=∑(2i - n - 1)ai,其中i = 1到n。
显然上面的部分很容易求,然后我们只需求出多加的部分和少减的部分。
仔细一想,如果x = a,那么只有y = a + 1 或 a - 1的时候才会对d(x,y)产生影响,因此我们记录ai出现的个数。每当记录下一个ai的个数时,去计算因为这个ai而多算的部分和少算的部分(ai与之前的i - 1个数),处理完的sum就是最后的答案。
另外要注意的是这道题数据范围大,会爆long long,只能用long double 了。

#include<bits/stdc++.h>
using namespace std;
const int maxn = 2e5 + 5;
double arr[maxn];
int main()
{map<double,double>m;int n;long double sum = 0;scanf("%d", &n);for(int i = 1; i <= n; i ++){scanf("%lf",&arr[i]);sum += (i - 1) * (arr[i]);sum -= (n - i) * (arr[i]);m[arr[i]]++;sum -= m[arr[i] - 1];sum += m[arr[i] + 1];}cout<<fixed<<setprecision(0)<<sum<<endl;return 0;
}

转载于:https://www.cnblogs.com/asakuras/p/8079012.html


http://www.ppmy.cn/news/118891.html

相关文章

某宝长x-mini-wua分析与破解

前言 某宝的x-mini-wua中带着硬件参数 如果是新设备 则可以不带账号获取一些淘宝商品的数据 如果能生成海量的wua那岂不是可以无限不带账号拿数据&#xff1f; 好了开始分析 样本21年的某宝 本文并不会贴出对应的算法 只会一带而过 重点是mini-wua生成的流程 以下代码快内容都…

Python 爬虫遇到形如 #x5c0f;#x8bf4; 的编码如何转换为中文?

<dt>学科主题:</dt><dd><a href="openlink.php?keyword=%E9%95%BF%E7%AF%87%E5%B0%8F%E8%AF%B4">&#x957f;&#x7bc7;&#x5c0f;&#x8bf4;</a>-&#x4e2d;&#x56fd;-&#x5f53;&#x4ee3;</dd> </dl>…

HbuilderX 2.6.15 版本说明

HBuilder X - Release Notes 2.6.15.20200421 新增 【重要】内置浏览器运行时&#xff0c;将日志直接输出到HBuilderX控制台新增 内置web服务器 支持自定义端口 &#xff08;菜单【设置】【运行配置】&#xff09;新增 FTP插件 支持通过commands在【自定义快捷键】中配置快捷键…

【开源电路】STM8S903K3T6C开发板

【开源电路】STM8S903K3T6C开发板 ✅此型号开发板其实与之前的《【开源电路】STM32F103VCT6开发板》同一批打样回来的&#xff0c;为什么没有一起发布出来&#xff0c;其实是在PCBA制作好之后&#xff0c;一直没有与上位机通讯上耽误了&#xff0c;没有验证所以没有发布出来。 …

STM8SF903K3T6定时器1输入捕获

STM8SF903K3T6定时器1输入捕获 简介 最近接了个转速仪的项目&#xff0c;原理是计频率。最开始是用外部中断&#xff0c;然后根据定时器定时一秒来取值&#xff0c;转速是rpm,所以还要乘以60. 因为需要反映快所以后来改用定时捕捉。采用TIM1的通道一PC1来捕捉。代码流程 1.开…

STM8S903K3T6C基于ST Visual Develop开发输入输出按键检测示例

STM8S903K3T6C基于ST Visual Develop开发输入输出按键检测示例 使用IAR开发stm8调用标准库&#xff0c;有时候非常卡顿&#xff0c;虽然开发起来方便&#xff0c;但是体验感很差。 开发环境 ST Visual Develop Cosmic CxSTM8 32K 4.3.4插件配合基于C语言开发。 ST Visual Dev…

一场变革来到零售业,盖雅「劳动力账户」助力连锁门店全面管理人效

‍ 上半年&#xff0c;逐渐回暖的出游&#xff0c;为文旅和线下零售业的营收创造了希望&#xff0c; 但面对高周转率和低利润率的行业竞争格局&#xff0c;比起令人兴奋的营收&#xff0c;大部分零售企业仍在焦虑营收背后的成本。 或许是过去三年的环境让更多企业学会了「精…

STM8S903K3T6C基于ST Visual Develop开发串口数据收发示例

STM8S903K3T6C基于ST Visual Develop开发串口数据收发示例 相关篇《STM8S903K3T6C基于IAR寄存器开发串口通讯示例》&#x1f4fa;环境配置和工程创建到编译和测试全过程演示&#xff1a; 利用ST Visual Develop配置环境和工程&#xff0c;利用ST Visual Programmer工具来烧录程…