「GMOI R1-T4」Rain

Luogu
IDLGP8927
Time1000ms
Memory128MB
DifficultyP4
模拟数学Special JudgeO2优化
为了防止神社被“大炮开兮轰他娘”,灵梦需要求雨。 求雨需要在一条笔直的路上建 $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$ 号的位置排列。(多个只需输出一个即可) ## Input 第一行一个整数 $n$,表示法阵数量。 第二行两个整数 $p,q$,表示法阵的倍率常量。 第三行 $n$ 个整数,表示数组 $a$。 ## Output 第一行一个整数,表示答案。 第二行 $n$ 个整数,表示对应位置 $a$ 的排列,按照编号从 $1$ 到 $n$ 输出。 [samples] ## Background > **求雨** > >玉皇爷爷也姓张, > >为啥为难俺张*昌? > >三天之内不下雨, > >先扒龙皇庙, > >__再用大炮轰你娘。__ 如果再不下雨,张大帅就会轰掉全亚洲所有的宗教场所! 博丽神社因为可以在外界被看到,自然也无法幸免于难,灵梦十分着急,准备使用祖传秘法求雨…… ## Note **本题开启 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$ |
Samples
Input #1
10
2 3
1 2 3 4 5 6 7 8 9 10
Output #1
131
5 6 7 1 8 2 9 3 10 4
API Response (JSON)
{
  "problem": {
    "name": "「GMOI R1-T4」Rain",
    "description": {
      "content": "为了防止神社被“大炮开兮轰他娘”,灵梦需要求雨。 求雨需要在一条笔直的路上建 $n$ 个法阵,编号为 $1,2,\\cdots,n$。 给定一个长度为 $n$ 的数组 $a$,表示在 $a_1$ 到 $a_n$ 的位置建法阵,你要干的是给法阵编号。 灵梦需要来检测法阵效果,她会从 $1$ 号法阵走到 $2$ 号,从 $2$ 号再走到 $3$ 号,直到走到 $n$ 号,再从 $n$ 号走回 $1",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 131072
    },
    "difficulty": {
      "LuoguStyle": "P4"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP8927"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "为了防止神社被“大炮开兮轰他娘”,灵梦需要求雨。\n\n求雨需要在一条笔直的路上建 $n$ 个法阵,编号为 $1,2,\\cdots,n$。\n\n给定一个长度为 $n$ 的数组 $a$,表示在 $a_1$ 到 $a_n$ 的位置建法阵,你要干的是给法阵编号。\n\n灵梦需要来检测法阵效果,她会从 $1$ 号法阵走到 $2$ 号,从 $2$ 号再走到 $3$ 号,直到走到 $n$ 号,再从 $n$ 号走回 $1...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments