CF301D Yaroslav and Divisors

题目描述

给定一个 $1\sim n$ 的排列 $p$。有 $m$ 个询问,每个询问给定 $l,r$,询问有多少对 $i,j(l\leq i,j\leq r)$ 使得 $p_i$ 是 $p_j$ 的倍数。

输入格式

第一行输入两个整数 $n,m(1\leq n,m\leq 2\times 10^5)$,表示序列长度和询问个数。 第二行输入 $n$ 个整数表示排列 $p$。 接下来 $m$ 行,每行两个整数 $l,r(1\leq l\leq r\leq n)$,表示一组询问。

输出格式

对于每组询问,输出一行一个整数代表这次询问的答案。