>When no more interesting kata can be resolved, I just choose to create the new kata, to solve their own, to enjoy the process  --myjinxin2015 said

# Description:
 Given two array of integers(`arr1`,`arr2`). Your task is going to find a pair of numbers(an element in arr1, and another element in arr2), their difference is as big as possible(absolute value); Again, you should to find a pair of numbers, their difference is as small as possible. Return the maximum and minimum difference values by an array: `[  max difference,  min difference  ]`

 For example:
 ```
 Given arr1 = [3,10,5], arr2 = [20,7,15,8]
 should return [17,2] because 20 - 3 = 17, 10 - 8 = 2
 ```
 
# Note:
 - arr1 and arr2 contains only integers(positive, negative or 0);
 - arr1 and arr2 may have different lengths, they always has at least one element;
 - All inputs are valid.
 - This is a simple version, if you want some challenges, [try the challenge version](https://www.codewars.com/kata/583c592928a0c0449d000099).
 
# Some Examples
 ```
 maxAndMin([3,10,5],[20,7,15,8]) === [17,2]
 maxAndMin([3],[20]) === [17,17]
 maxAndMin([3,10,5],[3,10,5]) === [7,0]
 maxAndMin([1,2,3,4,5],[6,7,8,9,10]) === [9,1]
 ```

Source: codewars | Difficulty: EASY
Tags: Fundamentals

Starter code: def max_and_min(arr1,arr2):
	

Solutions:
def max_and_min(arr1, arr2):
	diffs = [abs(x - y) for x in arr1 for y in arr2]
	return [max(diffs), min(diffs)]


def max_and_min(arr1, arr2):
	arr1.sort()
	arr2.sort()
	i = 0
	difference = []
	while i < len(arr1):
		local = []
		for element in arr2:
			local_dif = abs(arr1[i] - element)
			local.append(local_dif)
		local.sort()
		difference.append(min(local))
		difference.append(max(local))
		i += 1
	difference.sort()
	maximum = max(difference)
	minimum = min(difference)
	return [maximum, minimum]


def max_and_min(lst1, lst2):
	diff = sorted((abs(b - a) for a in lst1 for b in lst2))
	return [diff[-1], diff[0]]


def max_and_min(arr1, arr2):

	def mini(i, j):
		if i == len(a1) or j == len(a2):
			return float('inf')
		val = a1[i] - a2[j]
		if val < 0:
			return min(-val, mini(i + 1, j))
		return min(val, mini(i, j + 1))
	(a1, a2) = (sorted(arr1), sorted(arr2))
	return [max(a2[-1] - a1[0], a1[-1] - a2[0]), bool(set(a1) ^ set(a2)) and mini(0, 0)]


def max_and_min(arr1, arr2):
	return [max((abs(a - b) for a in arr1 for b in arr2)), min((abs(a - b) for a in arr1 for b in arr2))]


def max_and_min(arr1, arr2):
	(max_diff, min_diff) = (float('-inf'), float('inf'))
	for a in arr1:
		for b in arr2:
			current_sum = abs(b - a)
			max_diff = max(max_diff, current_sum)
			min_diff = min(min_diff, current_sum)
	return [max_diff, min_diff]


def max_and_min(arr1, arr2):
	(mi, ma) = (float('inf'), -float('inf'))
	for x in arr1:
		for y in arr2:
			d = abs(x - y)
			if d < mi:
				mi = d
			if d > ma:
				ma = d
	return [ma, mi]


def max_and_min(arr1, arr2):
	l = []
	for temp1 in arr1:
		for temp2 in arr2:
			l.append(abs(temp1 - temp2))
			l.sort()
	return [l[-1], l[0]]