ZR#985
ZR#985
解法:
可以先假设每个区间中所有颜色都出现,然后减掉多算的答案。对每种颜色记录它出现的位置,则相邻两个位置间的所有区间都要减去,时间复杂度 $ O(n) $ 。
其实可以理解为加法原理的逆过程,即减法原理。
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<cmath>
using namespace std;
#define LL long long
#define N 100010
LL las[N],n,ans,x;
inline LL calc(LL n) {
return n * (n + 1) / 2;
}
int main() {
scanf("%lld",&n);
ans = calc(n) * n;
for(int i = 1 ; i <= n ; i++) {
scanf("%lld",&x);
ans -= calc(i - las[x] - 1);
las[x] = i;
}
for(int i = 1 ; i <= n ; i++)
ans -= calc(n - las[i]);
printf("%lld\n",ans);
return 0;
}
ZR#985的更多相关文章
- 第一部分:C9高校、985和211、双一流
第一部分:C9高校.985和211.双一流 C9高校,包括:清北.复交.浙南.中科大西交大和哈工大.1998年5月4日,时任国家主席江.泽.民在庆祝北京大学建校100周年大会上代表中国共.产.党和中华 ...
- Contest - 多校训练(985专场) Problem C: 985的方格难题
题目链接:http://acm.zzuli.edu.cn/zzuliacm/problem.php?cid=1157&pid=2 Description 985走入了一个n * n的方格地图, ...
- Codeforce Div-2 985 C. Liebig's Barrels
http://codeforces.com/contest/985/problem/C C. Liebig's Barrels time limit per test 2 seconds memory ...
- 【LEETCODE】47、985. Sum of Even Numbers After Queries
package y2019.Algorithm.array; /** * @ProjectName: cutter-point * @Package: y2019.Algorithm.array * ...
- ZR#1005
ZR#1005 解法: 题解给了一个建图跑最短路的做法,但好像没有必要,因为 $ m $ 没有用,所以直接上完全背包就行了. CODE: #include<iostream> #inclu ...
- ZR#1004
ZR#1004 解法: 对于 $ (x^2 + y)^2 \equiv (x^2 - y)^2 + 1 \pmod p $ 化简并整理得 $ 4x^2y \equiv 1 \pmod p $ 即 $ ...
- ZR#1009
ZR#1009 解法: 因为无敌的SR给了一个大暴力算法,所以通过打表发现了了一些神奇的性质,即第一行和第一列的对应位置数值相等. 我们可以通过手算得出 $ F(n) = \frac{n(n + 1) ...
- ZR#1008
ZR#1008 解法: 直接预处理出来执行完一个完整的串可以到达的位置,然后算出重复的次数直接乘在坐标上,最后处理一下余下的部分就行了. CODE: #include<iostream> ...
- ZR#1015
ZR#1015 解法: 我们需要求得, $ g_i $ 表示长度为的最长不下降子序列个数. 设 $ f_{i,j} $ 表示统计第前$ i $ 个数字,得到最长不下降子序列末端为 $ j $ . 显然 ...
随机推荐
- 兴奋与沮丧并存spider爬取拉勾网
兴奋的开发除了爬取拉勾网的爬虫信息,可是当调试都成功了的那一刻,我被拉钩封IP了. 下面是spider的主要内容 import reimport scrapy from bs4 import Beau ...
- docker-每天5分钟玩转Docker容器技术
安装 https://www.cnblogs.com/qinxu/p/10032176.html 安装教程,目前只能安装到18版本的,安装完后执行下面命令更新到版本19 yum install doc ...
- Centos7安装防火墙firewall
安装 1.下载 yum install -y firewalld yum install -y firewall-config 2.启动 systemctl start firewalld # 启动 ...
- spice在桌面虚拟化中的应用系列之二(Linux平台spice客户端的编译安装,支持USB映射)
1.系统环境 1.1 测试环境 centos6.4最小化安装(centos6.x桌面版也适用) 使用yum源为163源加EPEL源 1.2 spice客户端介绍 spice作为远程连接工具,可以支持远 ...
- kubernetes之pod健康检查
目录 kubernetes之pod健康检查 1.概述和分类 2.LivenessProbe探针(存活性探测) 3.ReadinessProbe探针(就绪型探测) 4.探针的实现方式 4.1.ExecA ...
- 网卡启动安装dell服务器OS
参照视频 需要将boot改成bois启动 https://www.dell.com/support/contents/cn/zh/cndhs1/videos/videoPlayer/k1ajZzdjo ...
- MongoDB的关闭
关闭 1,非后台运行时,关闭对话,或者ctrl+c 2,登录数据库执行:db.shutdownServer(); 3,带数据目录,关闭服务器,安全 mongod --shutdown --dbpa ...
- h5中history实例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- java计算两个经纬度之间的距离
/** * 计算点 是否在一个固定点的半径范围内 * @2016年10月20日 * @param a 经度1 已知 * @param b 纬度1 已知 * @param x 经度2 * @param ...
- XML-1
1.什么是XML xml即 Extensible Markup Language,中文叫可扩展标记语言,是一种具有结构性的标记语言. 2.Xml文档的构成 XML文档即用xml语言编写的文档,它包括以 ...