Codeforces Round #737 Ezzat and Grid 题解 (Java/C++)

题解 这个题大概分为四个部分。 第一部分:Hash 由于最多只有m段1,因此我们很自然的想到将$1\leq l \leq r \leq 10^9$的hash到$1\leq l \leq r \leq 2\cdot 3\cdot 10^5$。将原先的线段的两端离散后排序,按照大小顺序依次hash即可。…

Codeforces Round #735 ABCD 题解 (Java/C++)

A. Cherry 题解 显然,我们希望区间内的最大值和最小值都尽可能大,这样乘积才能尽可能大。显然$$max(a_{l},a_{l+1})\cdot min(a_{l},a_{l+1}) \geq max(a_{l},a_{l+1},a_{l+2})\cdot min(a_{l},a_{l+1},a_{l+2})$$和$$max(a_{l+1},a_{l+2})\cdot min(a_{l+1},a_{l+2}) \geq max(a_{l},a_{l+1},a_{l+2})\cdot min(a_{l},a_{l+1},a_{l+2})$$中至少有一个成立。…