2169 -- 最大公约数题解

问题描述

Description

给定一个长为 �n 的正整数序列 �a,和一个正整数 �k。求出:
max⁡i−j≥kmax​{gcd(ai​,aj​)}

Input

第一行两个正整数 �n 和 �k;
第二行 �n 个正整数表示序列 �a。

Output

一行一个正整数,表示答案。

Sample Input

5 2
2 6 6 3 5

Sample Output

3

Sample Explanation

样例中选�=2,�=4i=2,j=4,满足�−�≥�=2j−i≥k=2,���(�2,�4)=���(6,3)=3gcd(a2​,a4​)=gcd(6,3)=3。

Hint

对于 20%20% 的数据,1≤�≤1031≤n≤103。
对于另 20%20% 的数据,1≤��≤1031≤ai​≤103。
对于另 20%20% 的数据,�=1k=1。
对于 100%100% 的数据,1≤�<�≤3×105,1≤��≤1061≤k

你可能感兴趣的:(数学,数论,倍增,c++,算法)