找更多的数字
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

给你一个长度为n的数组a,现在有q次询问。
每次询问,给你l,r,对于子数组a[l],a[l+1]...a[r],其中有两个只出现一次的数字,其他数字都出现了两次。
请你找到这两个只出现一次的数。

输入描述:

第一行输入n,q,第二行输入一个长度为n的数组a

之后q行,表示q次询问,每次询问给出l和r

保证每次询问的区间中有两个只出现一次的数字,其他数字都出现了两次。
 2 ≤ n ≤ 1e5
 0 < a[i] ≤ 1e6 (1 <= i <= n)
 1 ≤ q ≤ 1e6
 1 ≤ l < r ≤ n

输出描述:

每次询问从小到大输出这两个数字
示例1

输入

复制
8 3
1 9 3 1 4 4 3 5
1 8
1 4
5 8

输出

复制
5 9
3 9
3 5