- 博客(2)
- 收藏
- 关注
原创 Educational Codeforces Round 34
D. Almost Difference分两种情况:1.当|x-y|>1时,后面每个数与当前ai相减就是对于答案的贡献,用一个后缀和就可以直接得到2.当|x-y|<=1时,当前的ai会多减去值为ai-1的值的数量,会多加ai+1的值的数量,用map去记录每个值的数量,然后修正即可唯一要注意的地方是2e5*2e5*1e9会爆ll,记得用long double#include<bits/stdc++.h>#define ll long long#define l
2020-05-25 16:56:31
144
原创 Codeforces Round #623
简单的想法就是,如果有多个标号相同的,保留权值最高的那个,其余的加一处理,实现的时候出了一些问题,最开始用优先队列把全部数据放进去处理,T了,想想发现复杂度变O(N^2)了,后来看了一下大神的博客,其实只需要按照递增的顺序把标号相同的权值放入优先队列处理就好了,每次pop()出头元素,答案增加队列元素之和。#include<bits/stdc++.h>#define ll long long#define lnode node*2,start,mid#define rnode nod
2020-05-25 16:38:14
130
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅