CF793A Oleg and shares 题解
Content
有 \(n\) 支股票,第 \(i\) 支股票原价为 \(a_i\) 卢布。每秒钟可能会有任意一支股票的价格下降 \(k\) 卢布,以至于降到负数。求所有股票的价格均变得相同所要经过的最短时间,或者这不可能。
数据范围:\(1\leqslant n\leqslant 10^5,1\leqslant k,a_i\leqslant 10^9\)。
Solution
因为股票的价格只能够下降,因此肯定是要求最后都要降到 \(n\) 支股票的价格的最小值 \(x\)。然后,因为每秒下降 \(k\) 卢布,所以,只要有 \(i\) 使得 \(k\nmid a_i-x\) 那么就不可能满足题目的条件,否则,答案就是 \(\sum\limits_{i=1}^n\dfrac{a_i-x}{k}[a_i\neq x]\)。
Code
#include <cstdio>
#include <algorithm>
#include <cstring>
#include <cmath>
#include <iostream>
using namespace std;
int a[100007];
long long ans;
int main() {
	int n, k;
	scanf("%d%d", &n, &k);
	for(int i = 1; i <= n; ++i)	scanf("%d", &a[i]);
	sort(a + 1, a + n + 1);
	for(int i = 2; i <= n; ++i) {
		if((a[i] - a[1]) % k)	return printf("-1"), 0;
		ans += (a[i] - a[1]) / k;
	}
	printf("%lld", ans);
}
												
											CF793A Oleg and shares 题解的更多相关文章
- 【codeforces 793A】Oleg and shares
		
[题目链接]:http://codeforces.com/contest/793/problem/A [题意] 每次你可以对1..n中的任意一个数字进行减少k操作; 问你最后可不可能所有的数字都变成一 ...
 - C - Oleg and shares
		
Problem description Oleg the bank client checks share prices every day. There are n share prices he ...
 - Tinkoff Challenge - Elimination Round 开始补题
		
A. Oleg and shares time limit per test 1 second memory limit per test 256 megabytes input standard i ...
 - CF729A Interview with Oleg 题解
		
Content 给出一个长度为 \(n\) 字符串 \(s\),请将开头为 \(\texttt{ogo}\),后面带若干个 \(\texttt{go}\) 的子串替换成 \(\texttt{***}\ ...
 - HDU1043 Eight(八数码:逆向BFS打表+康托展开)题解
		
Eight Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Sub ...
 - Codeforces Round #469 Div. 2题解
		
A. Left-handers, Right-handers and Ambidexters time limit per test 1 second memory limit per test 25 ...
 - 【57.97%】【codeforces Round #380A】Interview with Oleg
		
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...
 - Vulnhub靶场题解
		
Vulnhub简介 Vulnhub是一个提供各种漏洞环境的靶场平台,供安全爱好者学习渗透使用,大部分环境是做好的虚拟机镜像文件,镜像预先设计了多种漏洞,需要使用VMware或者VirtualBox运行 ...
 - 2016 华南师大ACM校赛 SCNUCPC 非官方题解
		
我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...
 
随机推荐
- 花了30天才肝出来,史上最全面Java设计模式总结,看完再也不会忘
			
本文所有内容均节选自<设计模式就该这样学> 序言 Design Patterns: Elements of Reusable Object-Oriented Software(以下简称&l ...
 - CSP2020 自爆记
			
Day -1 - 2020.11.5 发现自己 dp 学得很烂--刷了几道 dp 找找感觉. 晚上死活睡不着,觉得要爆炸了. Day 0 - 2020.11.6 白天在学校觉得人飘了. 傍晚回来拿了准 ...
 - Codeforces 587F - Duff is Mad(根号分治+AC 自动机+树状数组)
			
题面传送门 第一眼看成了 CF547E-- 话说 CF587F 和 CF547E 出题人一样欸--还有另一道 AC 自动机的题 CF696D 也是这位名叫 PrinceOfPersia 的出题人出的- ...
 - MAFFT 进行多序列比对
			
简介 最经典和广为熟知的多序列比对软件是 clustalw . 但是现有的多序列比对软件较多,有文献报道:比对速度(Muscle>MAFFT>ClustalW>T-Coffee),比 ...
 - R语言与医学统计图形-【20】ggplot2图例
			
ggplot2绘图系统--图例:guide函数.标度函数.overrides.aes参数 图例调整函数guide_legend也属于标度函数,但不能单独作为对象使用,即不能如p+guide_legen ...
 - C7的开机自启动设置
			
CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分 系统服务放在/usr/lib/systemd/system [Un ...
 - DRF知识点总结
			
1. Web API接口 2. Restful接口规范 RDF请求流程及主要模块分析
 - 13 — springboot集成mybatis-plus — 更新完毕
			
1.mybatis-plus需要掌握的知识 1).mybatis-plus是什么? 不写了,老衲一般都是直接进官网 mybatis-plus官网地址:https://baomidou.com/guid ...
 - Yarn 容量调度器多队列提交案例
			
目录 Yarn 容量调度器多队列提交案例 需求 配置多队列的容量调度器 1 修改如下配置 SecureCRT的上传和下载 2 上传到集群并分发 3 重启Yarn或yarn rmadmin -refre ...
 - SQLITE_BTREE_H
			
sqlite3.c, 237436行 = 全部源文件,找东西比多文件查找方便多了:-),字符串查找一点都不慢. 不要太害怕,SQLite说它的代码里有非常多是用来做数据完整性检查和测试的.但愿B树,虚 ...