P8927 「GMOI R1-T4」Rain

题目背景

> **求雨** > >玉皇爷爷也姓张, > >为啥为难俺张*昌? > >三天之内不下雨, > >先扒龙皇庙, > >__再用大炮轰你娘。__ 如果再不下雨,张大帅就会轰掉全亚洲所有的宗教场所! 博丽神社因为可以在外界被看到,自然也无法幸免于难,灵梦十分着急,准备使用祖传秘法求雨……

题目描述

为了防止神社被“大炮开兮轰他娘”,灵梦需要求雨。 求雨需要在一条笔直的路上建 $n$ 个法阵,编号为 $1,2,\cdots,n$。 给定一个长度为 $n$ 的数组 $a$,表示在 $a_1$ 到 $a_n$ 的位置建法阵,你要干的是给法阵编号。 灵梦需要来检测法阵效果,她会从 $1$ 号法阵走到 $2$ 号,从 $2$ 号再走到 $3$ 号,直到走到 $n$ 号,再从 $n$ 号走回 $1$ 号。 由于法阵的特殊效果,从 $i$ 个走到 $i+1$ 个的距离是 $\left|a_i\times p-a_{i+1}\times q\right|$。特别的,从 $n$ 号走回到 $1$ 号的距离是 $\left|a_n\times p-a_1\times q\right|$。$p,q$ 是给定的两个常数,$a_i,a_{i+1}$ 是两个法阵的位置。 灵梦希望你来求一下最大的行走距离,并输出对应法阵从 $1$ 号到 $n$ 号的位置排列。(多个只需输出一个即可)

输入格式

第一行一个整数 $n$,表示法阵数量。 第二行两个整数 $p,q$,表示法阵的倍率常量。 第三行 $n$ 个整数,表示数组 $a$。

输出格式

第一行一个整数,表示答案。 第二行 $n$ 个整数,表示对应位置 $a$ 的排列,按照编号从 $1$ 到 $n$ 输出。

说明/提示

**本题开启 SPJ。** **本题读入量较大,建议使用较快的读入方式。** 对于 $100\%$ 的数据满足 $10\le n\le 10^6$,$1\le p,q \le 10^{5}$,$1\le a_i\le 10^{5}$。 | 编号 | $n$ | $p,q$ | $a_i$ | 分数 | | :----------: | :----------: | :----------: | :----------: | :----------: | | $1$ | $n=10$ | $p,q\le 10^{3}$ | $a_i\le 10^{3}$ | $4$ | | $2$ | $n=10$ | $p,q\le 10^{3}$ | $a_i\le 10^{3}$ | $5$ | | $3$ | $n=10$ | $p,q\le 10^{3}$ | $a_i\le 10^{3}$ | $5$ | | $4\sim 6$ | $n=19$ | $p,q\le 10^{5}$ | $a_i\le 10^{5}$ | $10$ | | $7$ | $n\le 10^{4}$ | $p,q\le 10^{5}$ | $a_i\le 10^{5}$ | $8$ | | $8$ | $n\le 10^{4}$ | $p,q\le 10^{5}$ | $a_i\le 10^{5}$ | $9$ | | $9$ | $n\le 10^{4}$ | $p,q\le 10^{5}$ | $a_i\le 10^{5}$ | $9$ | | $10\sim 12$ | $n\le 10^{6}$ | $p,q\le 10^{5}$ | $a_i\le 10^{5}$ | $10$ |