思维
Site1997
[呆]
展开
-
hdu 6237
(贪心) 题意:给定n(n<10^5)堆石子,每堆石子有a_i(a_i<10^5)个,每次操作可以将一个石子从一堆移动到另一堆,求最少的操作次数,使得存在一个数x(x>1),使得每一堆石子均能被x整除。思路:依题意可知,x必须为∑Nn=1ai\sum \nolimits_{n=1}^Na_i的因子,于是我们先将x进行质因数分解,然后枚举每一个质原创 2017-12-21 23:45:18 · 520 阅读 · 0 评论 -
hdu 6229
(找规律) 题意:题目共T(T≤10^3)组数据,每组数据里给定一个n×n(n≤10^4)的格子,其中有k(k≤10^3)个格子里面有障碍物。先将一个机器人放在(0,0)处,它只能向上下左右原地五个方向移动(不能移动到障碍物上),假设能移动的位置有d个,那么它移动到每个位置的概率就是1/(d+1)原创 2017-12-14 17:14:53 · 493 阅读 · 0 评论 -
codeforces 878D
思维题 题意:给出k(12)个生物,每个生物有n(1e5)个特性,然后q(1e5)个操作,每次操作可以任选之前的两个生物产生一个新生物(特性为这两个生物的特性的max/min值),也可以询问之前某个生物的某个特性。原创 2017-11-26 14:59:08 · 727 阅读 · 0 评论 -
hdu 6231
(二分+尺取法) 题意:给定长度为n(n<10^5)的数组a,然后拿出这个数组里所有长度大于k(k≤n)的区间,并将这些区间中的第k大元素拿出来放到另一个数组里,求新生成数组的第M大元素是多少。思路:这题入手点很关键,由于答案肯定是a数组元素之一,而a中元素越大最后排名肯定越靠前,所以可以试试二分答案,然后接下来应该想到如何确定这个元素在新数组的排名,于原创 2017-12-28 21:37:35 · 442 阅读 · 0 评论