Building Permutation (Codeforces 285C)
Tags: Implement, sortings

Permutation p is an ordered set of integers p1,  p2,  ...,  pn, consisting of n distinct positive integers, each of them doesn't exceed n. We'll denote the i-th element of permutation p as pi. We'll call number n the size or the length of permutation p1,  p2,  ...,  pn.You have a sequence of integers a1, a2, ..., an. In one move, you are allowed to decrease or increase any number by one. Count the minimum number of moves, needed to build a permutation from this sequence.

Input: The first line contains integer n (1 ≤ n ≤ 3·105) — the size of the sought permutation. The second line contains n integers a1, a2, ..., an ( - 109 ≤ ai ≤ 109).

Output: Print a single number — the minimum number of moves.Please, do not use the %lld specifier to read or write 64-bit integers in C++. It is preferred to use the cin, cout streams or the %I64d specifier.

Note: In the first sample you should decrease the first number by one and then increase the second number by one. The resulting permutation is (2, 1).In the second sample you need 6 moves to build permutation (1, 3, 2).

Sample Inputs:
2
3 0

3
-1 -1 2

Sample Outputs:
2

6

Solution (Python):
def main():
    size = int(input())
    numbers = sorted(map(int, input().split()))
    total = 0
    numbers.insert(0, 0)
    for i in range(1, size + 1):
        if numbers[i] > i:
            total += numbers[i] - i
        elif numbers[i] < i:
            total += i - numbers[i]
    print(total)
if __name__ == '__main__':
    main()

Solution (Python):
def solve(nums):
    nums = sorted(nums)
    target = 1
    tot = 0
    for num in nums:
        tot += abs(target - num)
        num = target
        target += 1
    return tot
_ = input()
nums = [int(s) for s in input().split()]
print(solve(nums))

Solution (Python):
def main():
    n = int(input())
    L = list(map(int, input().split()))
    L.sort()
    steps = 0
    for i in range(1, n + 1):
        steps += abs(i - L[i - 1])
    print(steps)
main()