U412529 互质数
题目背景
**时间限制:** 1.0 秒
**空间限制:** 512 MB
题目描述
有 $n$ 个数字,$a_1,a_2,...,a_n$ 。有一个集合,刚开始集合为空。然后有一种操作每次向集合中加入一个数字或者删除一个数字。每次操作给出一个下标 $x(1\le x\le n)$ ,如果 $a_x$ 已经在集合中,那么就删除 $a_x$ ;否则就加入 $a_x$ 。
问每次操作之后集合中互质的数字有多少对。
注意,集合中可以有重复的数字,两个数字不同当且仅当他们的下标不同。
比如有两个数字 $a_1=a_2=1$ 。那么在经过两次操作 $1,2$ 之后,集合内存在两个 $1$ ,有一对互质。
输入格式
从标准输入读入数据。
第一行包含两个整数 $n$ 和 $q$ 。表示数字的种类和查询数目。
第二行有 $n$ 个以空格分开的整数 $a_1,a_2,...,a_n$ ,分别表示 $n$ 个数字。
接下来 $q$ 行,每行一个整数 $x$ ,表示每次操作的下标。
输出格式
输出到标准输出。
对于每一个查询,输出当前集合中互质的数字有多少对。
说明/提示
### 数据规模约定
对于 $30\%$ 的数据,$1\le n\le 100,1\le q\le 1000$ 。
对于所有数据,$1\le n\le 10^5,1\le q\le 10^5,1\le a_i\le 5\times 10^5$ 。