题目链接:http://codeforces.com/contest/903/problem/D

题意:给了一个二元关系为

f(x,y)={y−x,0,|x−y| > 1|x−y| <= 1

f(x, y) = \begin {cases}y-x, & \text{$|x-y|$ > 1} \\0, & \text{$|x-y|$
给出N个整数(1 <= N <= 200000), 1 ≤ ai≤ 109。1 ≤ a_i≤ 10^9。 求所有的 f(i,j)f(i, j), 其中 ( 1<=i<=j<=n1)

题解:显然直接暴力会超时, 下面进行优化。
每个数如果计算 ∑nk=i(ak−ai)\sum_{k=i}^{n} (a_k-a_i) 显然会多减或者多加, 多加的数是后面num[ai+1]num[a_i+1], 减的数为后面num[ai−1]num[a_i-1]。 所以可以预处理后缀和然后直接算贡献, 然后实时更新num[ai±1]num[a_i\pm1].

代码:

#include <bits/stdc++.h>using namespace std;
const int N = 2E5 + 7;
int a[N];
unordered_map<int,int> mp;
int b[N];
typedef long long ll;
typedef long double ld;
ll sa[N];
int main()
{//freopen("d:\\in.txt","r",stdin);std::ios::sync_with_stdio(false), cin.tie(0);int n;cin >> n;for(int i = 1;i <= n;i ++) {cin >> a[i];}for(int i = n;i >= 1;i --) sa[i] = sa[i+1] + a[i];ld cnt = 0;for(int i = 1;i <= n;i ++) {cnt = cnt + sa[i] - ((ld)n - i + 1) * a[i];}for(int i = n;i >= 1;i --) {mp[a[i]] ++;cnt = cnt - mp[a[i]+1] + mp[a[i]-1];}cout << fixed << setprecision(0) << cnt << endl;return 0;
}

注意:会爆longlong,所以我们用long double记录结果,cout可以直接输入,如果想用printf输出必须用C++14及以上,然后printf(“%.0Lf\n”,…);

Codeforces903C相关推荐

最新文章

  1. 第一章:Flask安装
  2. C指针原理(34)-Ncurses-文本终端的图形
  3. Linux7安装gi报错,Redhat 7.6安装11G RAC GI时遇到此类报错
  4. ubuntu12.04 qtcreate支持中文输入
  5. 清华2018顶级数据团队建设全景报告发布:Python最受欢迎,C语言含金量最高
  6. c++类与对象(1)——构造,复制构造函数
  7. PYTHON前端几个框架的比较
  8. 重塑企业协同价值链,致远互联将“组织精神”进行到底
  9. Word批量调整插入图片大小
  10. 证明厄米矩阵不同特征值对应特征向量正交
  11. 十七、DPM模型参数设置详解
  12. Cocos2d-x初级篇之工程的创建和编译(windows环境)
  13. Finance_finacial_engineering_02
  14. Android 游戏设计教程:游戏元素和工具
  15. 2011年系统架构师考试题详解
  16. java saas_una-saas-toturial-master
  17. clickhouse 数据TTL使用
  18. 数据仓库、大数据平台、数据中台的区别
  19. 中国电信大数据价值挖掘:聚焦商业模式探索
  20. Vue向下滚动加载更多数据-scroll-案例

热门文章

  1. 中国电商远征军:俄罗斯人民需要你
  2. linux pdf 转图片不显示,Linux下wkhtmltopdf网页转为图片或者PDF方法
  3. 教育专家给家长的100条建议(转自:h…
  4. ldf文件怎么储存到mysql中_sqlserver数据库的ldf文件太大,我们如何压缩ldf日志文件...
  5. mysql 退出fdisk_fdisk 命令
  6. 计算机应用基础模块2word2010,国开计算机应用基础模块2Word2010文字处理系统客观题答案...
  7. R语言画聚类分析树形图
  8. JavaScript初步学习心得
  9. 【人工智能】知识图谱
  10. Tensorflow猫狗识别模型在Android上的部署