title: Search Insert And Delete In An Unsorted Array
signature: searchInsertAndDeleteInAnUnsortedArray :: [Integer] -> Integer -> Integer -> Integer
  searchInsertAndDeleteInAnUnsortedArray arr n key = 
test_code: import Text.Printf
  import Control.Exception (catch, SomeException)
  import Data.Typeable
  import qualified Data.List as List
  import qualified Data.Map as Map
  import qualified Data.Set as Set
  
  -- SOLUTION CODE
  -- ============================================
  
  PLACEHOLDER_CODE_BODY
  
  -- TESTING CODE 
  -- ============================================
  validateSolution :: Integer -> Integer -> Bool
  validateSolution actual expected = do
      actual == expected
  
  
  driver :: [Integer] -> Integer -> Integer -> Integer -> String
  driver arr n key expected = do
      if (validateSolution (PLACEHOLDER_FN_NAME arr n key) expected)
          then "PASSED"
      else "FAILED"
  
  main = do
      printf "TEST-0...%s\n" (driver ([4, 8, 11, 23, 55, 57, 73, 74, 77, 79, 93]) (8) (11) (2) )
  
      printf "TEST-1...%s\n" (driver ([-88, 12, -62, -66, -24, 18, 12, 22, 94, 30, -50, -42, -94, 18, 76, -6, -48, -68, 48, 36, -78, 52, -82, 76, 2, -44, -10, 88]) (27) (12) (1) )
  
      printf "TEST-2...%s\n" (driver ([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1]) (11) (0) (0) )
  
      printf "TEST-3...%s\n" (driver ([33, 9, 93, 70, 81, 70, 56, 66, 72, 81, 74, 32, 71, 72, 3, 81, 70, 22, 82, 2, 75, 18, 90, 29, 48]) (24) (72) (8) )
  
      printf "TEST-4...%s\n" (driver ([-98, -70, -62, -60, -60, -54, -48, -48, -46, -44, -34, -26, -18, -6, 4, 18, 28, 32, 34, 40, 50, 54, 56, 62, 64, 64, 98]) (18) (23) (-1) )
  
      printf "TEST-5...%s\n" (driver ([1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 1, 0, 0, 1]) (17) (16) (-1) )
  
      printf "TEST-6...%s\n" (driver ([4, 6, 7, 10, 10, 12, 13, 18, 23, 29, 29, 34, 46, 54, 60, 61, 63, 67, 69, 70, 72, 76, 79, 79, 81, 82, 88, 90, 99]) (15) (28) (-1) )
  
      printf "TEST-7...%s\n" (driver ([94, 34, -60, -74, 86, 80, 68, -48, 78, -62, -98, -44, -44, 92, -94, -86, -36, 12, 84, -90, 52, 42, -42, -66, 88, 76, 66]) (21) (16) (-1) )
  
      printf "TEST-8...%s\n" (driver ([0, 0, 0, 1]) (2) (3) (-1) )
  
      printf "TEST-9...%s\n" (driver ([76, 59, 38, 83, 38, 93, 27, 11, 17, 80, 26, 28, 35, 53, 88, 10, 9, 75]) (12) (13) (-1) )
  
source_py: def search_insert_and_delete_in_an_unsorted_array(arr, n, key):
      for i in range(n):
          if (arr[i] == key):
              return i
      return (- 1)
source_cpp: int search_insert_and_delete_in_an_unsorted_array(vector<int> arr, int n, int key) {
    int i;
    for ( i = 0;
    i < n;
    i ++ ) if ( arr [ i ] == key ) return i;
    return - 1;
  }