#122
import numpy
def f(m):w=len(m);print sum([list(m[::-1,:].diagonal(i)[::(i+w+1)%2*-2+1])for i in range(-w,w+len(m[0]))],[])

#122
#import numpy
#lambda m:sum([list(m[::-1,:].diagonal(i)[::(i+len(m)+1)%2*-2+1])for i in range(-len(m),len(m)+len(m[0]))],[])

#f(numpy.arange(1,5).reshape(2,2))
#f(numpy.arange(1,13).reshape(3,4))
#f(numpy.array([[1,2,3,4]]))

f(numpy.array([[1]])) 														#=> [1]
f(numpy.array([[1, 2], [3, 1]])) 											#=> [1 2 3 1]
f(numpy.array([[1, 2, 3, 1]])) 												#=> [1 2 3 1]
f(numpy.array([[1, 2, 3], [5, 6, 4], [9, 7, 8], [1, 2, 3]])) 				#=> [1 2 5 9 6 3 4 7 1 2 8 3]
f(numpy.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 1, 2, 3]])) 					#=> [1 2 5 9 6 3 4 7 1 2 8 3]
f(numpy.array([[1, 2, 6, 3, 1, 2], [5, 9, 4, 7, 8, 3]])) 					#=> [1 2 5 9 6 3 4 7 1 2 8 3]
f(numpy.array([[1, 2, 5, 9, 6, 3, 4, 7, 1, 2, 8, 3]])) 						#=> [1 2 5 9 6 3 4 7 1 2 8 3]
f(numpy.array([[1], [2], [5], [9], [6], [3], [4], [7], [1], [2], [8], [3]]))#=> [1 2 5 9 6 3 4 7 1 2 8 3]
