28 lines
556 B
Swift
28 lines
556 B
Swift
if let N = Int(readLine() ?? ""),
|
|
let line = readLine(),
|
|
let nums = line.split(separator: " ").compactMap({Int($0)}) as? [Int],
|
|
nums.count == N
|
|
{
|
|
var (L, R) = (0, N-1)
|
|
var (vL, vR) = (nums[L], nums[R])
|
|
var val = abs(vL + vR)
|
|
|
|
while L != R {
|
|
let temp = nums[L] + nums[R]
|
|
|
|
if val > abs(temp) {
|
|
(vL, vR) = (nums[L], nums[R])
|
|
val = abs(temp)
|
|
}
|
|
|
|
if temp > 0 {
|
|
R -= 1
|
|
}
|
|
else {
|
|
L += 1
|
|
}
|
|
}
|
|
|
|
print(vL, vR)
|
|
}
|