cstringpangram

working of these two lines of code in the program


total+=!used[str[i]-'a'];
used[str[i]-'a']=1;

It is the condition for checking the characters and saving the value in the variable total.


Solution

  • The total variable will contain the number of unique characters in the array str.

    This happens because you increment the count(total+=!used[str[i]-'a']) only if you haven't already marked the character as visited. If you incremented it, you mark it as such in the next line (used[str[i]-'a']=1) so that you wont count it again.

    The notation str[i]-'a' is used to shift the ascii values of the characters from 0 to 25 (instead of 97 to 122) so that you can spare some space in the array.