Ad
  • Custom User Avatar

    (12, 6), (12, 6), (8, 2) <- Three pairs as there are two 12 there.

  • Custom User Avatar

    OPTION 1

    You are probably malloc'ing the exact len of the string.
    For e.g.

       char *c = malloc(strlen(incoming)); 
    

    Instead try

       char *c = malloc(strlen(incoming) + 1); // you need an extra byte for the null character
    

    OPTION 2

    Make sure you are not free'ing memory prematurely and then writing to the memory that was allocated
    earlier. This can also cause SIGSEG to be raised.

    Alternatively, think of an approach which eliminates the need to do either malloc'ing or free'ing.
    This exercise is all about string examination, which doesn't require you to make copy of anything.
    Just count the number of distinct characters that occur more than once.

    One approach (in pseudo code) would be:

    duplicates <- 0
    for char in alphabets: 
       if count of occurrences of char in test_string > 1: 
          duplicates <- duplicates + 1 
    
    return duplicates
    
  • Custom User Avatar

    Which language are you try to solve this kata in?

  • Default User Avatar

    your first order of business is to study your code for which line has the bug causing the Invalid memory access error message. it's likely that you're trying to assign a value to an unavailable memory location, such as beyond the bounds of memory allocated for a static array...

    EDIT: okay, those look like random tests. they are going to be different all the time.

  • Default User Avatar
    #include <stdio.h>
    printf("text = %s\n", text);