SAP MatchInsights

SAP, the German multinational software corporation, has developed an interactive application to help the German national team to prepare its encounters during the World Cup in Brazil. On a large touch screen, players and technical staff can review their matches and accessing numerous statistics even for each player or for the team.


Sorting algorithms visualized with folk dances

Sorting algorithms are used in computer science to sort, classify and order data, there are various walking more or less depending on what is known about the type of data to be processed. In this post, you’ll see an implementation of some of them with folk dances.









Movies: 3D Vs 4D Vs 5D Vs 6D Vs 7D

A 3D film refers to the creation of entities (images) in a three dimensions, which enhances the illusion of depth perception.

A 4D film is a marketing term which refers to a 3D film which we added a “fourth dimension”. This fourth dimension is usually represented by sensory special effects in the projection to simulate for example blowing wind, rain, earthquakes, etc.

4D film were sometimes sold under the 5D, 6D, 7D movies to highlight the variety and uniqueness of their products.

Multi-address in OpenERP V7.0

OpeneRPP manage natively multiple addresses for each partner. Remind a partner in openerp, includes both a client a supplier. In version 7.0, this option is not active by défaut, you will certainly need to manage multiple addresses for your partners. Indeed, it is very common to charge a client an address and send the bill to a second address. To activate it:

  1. proceed to the Configuration section
  2. In the left sidebar, under the subpart Configuration choose sales
  3. Then check “Allow a different address for delivery and invoicing” checkbox


Grid Walk problem


There is a monkey which can walk around on a planar grid. The monkey can move one space at a time left, right, up or down. That is, from (x, y) the monkey can go to (x+1, y), (x-1, y), (x, y+1), and (x, y-1). Points where the sum of the digits of the absolute value of the x coordinate plus the sum of the digits of the absolute value of the y coordinate are lesser than or equal to 19 are accessible to the monkey. For example, the point (59, 79) is inaccessible because 5 + 9 + 7 + 9 = 30, which is greater than 19. Another example: the point (-5, -7) is accessible because abs(-5) + abs(-7) = 5 + 7 = 12, which is less than 19. How many points can the monkey access if it starts at (0, 0), including (0, 0) itself?

Input sample:

There is no input for this program.

Output sample:

Print out the how many points can the monkey access. (The number should be printed as an integer whole number e.g. if the answer is 10 (its not !!), print out 10, not 10.0 or 10.00 etc.)


def sum_of_digits(number):
    Calculate the sum of the digits of the specified parameter.
    return sum(map(int, str(number)))

def is_accessible_point(x, y):
     Verify if the given point is accessible or not.
     return (sum_of_digits(abs(x)) + sum_of_digits(abs(y))) <= 19

def append_neighbors(points, x, y):
    Append accessible neighbors to the accessible points list `points`
    if it does not exists.
        for (i, j) in ((x+1, y), (x, y+1), (x-1, y), (x, y-1)):
            if is_accessible_point(i, j) and ((i, j) not in points):
                points.append((i, j))

if __name__ == '__main__':
    points = [(0, 0)]
    i = 0
    while i < len(points):
        append_neighbors(points, points[i][0], points[i][])
        i += 1

   print "Number of accessible points is: " % len(points)