CF1155C Alarm Clocks Everywhere

题目描述

```Ivan``` 要睡觉了!他决定先设置自己的闹钟,因为明天有许多必要的 $n$ 个活动要参加。第 $i$ 个活动将在 $x_i$ 分钟开始。```Ivan``` 不想错过任何活动,所以 ```Ivan``` 的闹钟必须在 $x_1,x_2,x_3...x_n$ 分钟都响一次,这样他才不会赖床。(然而闹钟在没有活动的时候响起是允许的) ```Ivan``` 需要为他的闹钟选择两个参数。$y$ 表示闹钟最初开始响铃的时间 ,$p$ 表示闹钟响铃的间隔。 闹钟参数设置好之后,他的闹钟会在 $y ,y+p,y+2p,y+3p...$分钟响起。 ```Ivan``` 可以随意设置 $y$ ,但他不能随意设置 $p$ ,因为生产厂家给定了只有 $m$ 种 $p$,即 $p_1 ,p_2,p_3...,p_m$ 所以 ```Ivan``` 需要找到两个参数 $y ,p_j$ ,使得闹钟的响铃时间包含 $x_1,x_2,x_3...x_n$ 的所有时间点。而你需要输出 $y,j$。如果有多种答案,任意输出一种。

输入格式

第一行 $n,m (2 \leq n \leq 3 \times10^5 ,1\leq m \leq3 \times 10^5)$ 第二行 $n$ 个数,第 $i$ 个数表示 $x_i(1\leq x_i \leq10^{18})$ ,保证输入是递增的 第二行 $m$ 个数,第 $i$ 个数表示 $p_i(1\leq p_i \leq10^{18})$

输出格式

共一行 输出 $y,j$。如果有多种答案,任意输出一种。