Hex Artifact Content
Not logged in

Artifact 4dbab301b915fb0de86c09d812f2d0516844f33a:


0000: 27 0a 27 20 57 72 69 74 74 65 6e 20 69 6e 20 56  '.' Written in V
0010: 42 53 63 72 69 70 74 0a 27 0a 0a 46 75 6e 63 74  BScript.'..Funct
0020: 69 6f 6e 20 52 65 61 64 4c 69 6e 65 28 29 0a 09  ion ReadLine()..
0030: 44 69 6d 20 73 0a 09 73 20 3d 20 53 70 6c 69 74  Dim s..s = Split
0040: 28 57 53 63 72 69 70 74 2e 53 74 64 49 6e 2e 52  (WScript.StdIn.R
0050: 65 61 64 4c 69 6e 65 2c 20 22 20 22 29 0a 09 46  eadLine, " ")..F
0060: 6f 72 20 69 20 3d 20 4c 42 6f 75 6e 64 28 73 29  or i = LBound(s)
0070: 20 54 6f 20 55 42 6f 75 6e 64 28 73 29 0a 09 09   To UBound(s)...
0080: 73 28 69 29 20 3d 20 43 4c 6e 67 28 73 28 69 29  s(i) = CLng(s(i)
0090: 29 0a 09 4e 65 78 74 0a 09 52 65 61 64 4c 69 6e  )..Next..ReadLin
00a0: 65 20 3d 20 73 0a 45 6e 64 20 46 75 6e 63 74 69  e = s.End Functi
00b0: 6f 6e 0a 0a 46 75 6e 63 74 69 6f 6e 20 47 63 64  on..Function Gcd
00c0: 28 61 2c 20 62 29 0a 09 49 66 20 61 20 3d 20 30  (a, b)..If a = 0
00d0: 20 54 68 65 6e 0a 09 09 47 63 64 20 3d 20 62 0a   Then...Gcd = b.
00e0: 09 45 6c 73 65 0a 09 09 47 63 64 20 3d 20 47 63  .Else...Gcd = Gc
00f0: 64 28 62 20 6d 6f 64 20 61 2c 20 61 29 0a 09 45  d(b mod a, a)..E
0100: 6e 64 20 49 66 0a 45 6e 64 20 46 75 6e 63 74 69  nd If.End Functi
0110: 6f 6e 0a 0a 46 75 6e 63 74 69 6f 6e 20 53 6f 6c  on..Function Sol
0120: 76 65 28 54 29 0a 09 44 69 6d 20 67 2c 20 72 0a  ve(T)..Dim g, r.
0130: 09 67 20 3d 20 41 62 73 28 54 28 31 29 20 2d 20  .g = Abs(T(1) - 
0140: 54 28 32 29 29 0a 09 46 6f 72 20 69 20 3d 20 32  T(2))..For i = 2
0150: 20 54 6f 20 55 42 6f 75 6e 64 28 54 29 0a 09 09   To UBound(T)...
0160: 67 20 3d 20 47 63 64 28 67 2c 20 41 62 73 28 54  g = Gcd(g, Abs(T
0170: 28 31 29 20 2d 20 54 28 69 29 29 29 0a 09 4e 65  (1) - T(i)))..Ne
0180: 78 74 0a 09 72 20 3d 20 54 28 31 29 20 6d 6f 64  xt..r = T(1) mod
0190: 20 67 0a 09 49 66 20 72 20 3d 20 30 20 54 68 65   g..If r = 0 The
01a0: 6e 0a 09 09 53 6f 6c 76 65 20 3d 20 30 0a 09 45  n...Solve = 0..E
01b0: 6c 73 65 0a 09 09 53 6f 6c 76 65 20 3d 20 67 20  lse...Solve = g 
01c0: 2d 20 72 0a 09 45 6e 64 20 49 66 0a 45 6e 64 20  - r..End If.End 
01d0: 46 75 6e 63 74 69 6f 6e 0a 0a 43 20 3d 20 52 65  Function..C = Re
01e0: 61 64 4c 69 6e 65 28 29 28 30 29 0a 46 6f 72 20  adLine()(0).For 
01f0: 43 61 73 65 49 44 20 3d 20 31 20 54 6f 20 43 0a  CaseID = 1 To C.
0200: 09 57 53 63 72 69 70 74 2e 53 74 64 4f 75 74 2e  .WScript.StdOut.
0210: 57 72 69 74 65 4c 69 6e 65 20 22 43 61 73 65 20  WriteLine "Case 
0220: 23 22 20 26 20 43 61 73 65 49 44 20 26 20 22 3a  #" & CaseID & ":
0230: 20 22 20 26 20 53 6f 6c 76 65 28 52 65 61 64 4c   " & Solve(ReadL
0240: 69 6e 65 29 0a 4e 65 78 74 0a                    ine).Next.