/ *入力
第一行動試験データの各整数K(0 <= K <= 10000)、二番目の配列A(1 <= A.length <= 10000,0 <= A [i]が<= 10000)の挙動
輸出
各テストケースのために、別々のラインで最小の差の出力。
サンプル入力
3
1 3 6
サンプル出力
3 * /
#include "stdafx.hを"
書式#include <iostreamの>
書式#include <ベクトル>
書式#include <数値>
書式#include <限界>
名前空間stdを使用。
int型smallestRange(int型K、int型* A、INT LEN)
{
I = LEN int型。
int型、建[10000] [10000]を追加します。
(int型J = 0; jの<I、J ++)について
{
[J] + kは= [j]を追加します。
建[j]は[J] = - kは、
}
int型分= 0;
(; - ; J ++ int型J = 0 1 J <I)について
{
(; Q <I、Q ++ int型のq = J + 1)について
{
; [Q]を追加 - int型のTA1は、[J]を追加します=
int型TA2 = -1 * TA1。
INT TJ1 =建[J] - 建[Q]。
int型TJ2 = -1 * TJ1。
もし(TA1 <TA2 && TA1 <TJ1 && TA1 <TJ2)
{
分= TA1。
}
他の{
もし(TA2 <TA1 && TA2 <TJ1 && TA2 <TJ2)
{
分= TA2。
}
他の{
もし(TJ1 <TA1 && TJ1 <TA2 && TJ1 <TJ2)
{
分= TJ1。
}
他の{
分= TJ2。
}
}
}
}
}
分を返します。
}
int型_tmain(int型のargc、_TCHAR * ARGV [])
{
int型のk;
裁判所未満<< "K" <<てendl;
cinを>> K;
int型A [10000];
int = 0、I = 0;
裁判所未満<< "A" <<てendl;
(> = 0で)、一方
{
cinを>>中。
[I] =で;
I ++;
}
int型のlen = I-1;
int型のres;
smallestRange RES =(A、のみ)。
coutの<< RES <<てendl;
0を返します。
}