Programming Tutorials and Interview Questions

Find the duplicate number in array: For example, an array with length 5 contains numbers {1, 2, 3, 4, 4}, the duplicated number is 4. Suppose that the duplicated number in the array is `m`

in given example. The sum of all numbers in the array, denoted as `arrSum`

, should be the result of `1+2+...+(n-1)+m`

. It is not difficult to get the sum of `1+2+...+(n-1)`

, which is denoted as sum. The duplicated number `m`

will be the difference of `arrSum`

and `sum`

. Following C program demonstrates how do we detect a repeated element in an integer array?.

/* An array of size N contains numbers ranging from 1 to N-1. There is exactly one number is duplicated in the array. Write a C program to find the duplicated number? */ #include <stdio.h> #define N 5 int main() { int arr[N]; //contains integers from 1 to N-1 int arrSum = 0; //sum of array elements int sum = (N * (N - 1)) / 2; //sum of 1 to N-1 int i; //loop counter printf("Enter %d integers form 1 to %d, with one duplicate:", N, N-1); for (i = 0; i < N; i++) { scanf ("%d", &arr[i]); arrSum += arr[i]; } printf("\nDuplicate number is: %d\n", arrSum - sum); }

The BBCâ€™s technology correspondent Rory Cellan-Jones gets a beer poured for him by a robotic barman - but how long does it take?

US politicians have voted to let ISPs gather and sell data about what Americans do online.

Customers who suffer poor service could get automatic payouts under Ofcom's plan.