מערך של 100 איברים עם אחד חסר
קיים מערך של 100 איברים מ - 1 עד 100. שום מספר לא חוזר על עצמו.. אבל איבר אחד בצורה מקרית חסר וריק. איך למצוא אותו בצורה הכי מהירה ומהו המספר החסר?
סכום של כל המספרים:
לכן:
- void findMissedNumber(int[] arr)
- {
- // will be the sum of the numbers in the array.
- int sum = 0;
- int idx = -1;
- for (int i = 0; i < arr.Length; i++)
- {
- if (arr[i] == 0)
- idx = i;
- else
- sum += arr[i];
- }
- // the total sum of numbers between 1 and arr.length.
- int total = (arr.Length + 1) * arr.Length / 2;
- Console.WriteLine("missing number is: " + (total - sum) + " at index " + idx);
- }