Weird redaction in PASSWD problem

There is this problem Password Practice Problem in Level up from 1* to 2* - CodeChef in which you have to check if a password is correct following this criteria:

  1. Password must contain at least one lower case letter [a-z]
  2. Password must contain at least one upper case letter [A−Z] strictly inside, i.e. not as the first or the last character;
  3. Password must contain at least one digit [0−9] strictly inside;
  4. Password must contain at least one special character from the set { ‘@’, ‘#’, ‘%’, ‘&’, ‘?’ } strictly inside;
  5. Password must be at least 10 characters in length, but it can be longer.

The right answer apparently is to there be at least one of uppercases, digits, and symbols inside, and there can be or not as first and last, so ##Aa000000000E was considered correct.

My guess is that the statement wanted to imply that strictly there have to be uppercases, digits and symbols in the password, but if their only appearance is as first or last, then is wrong.

The problem is that that is not said. I know that statements will be a little coded to not give the answer right away, but this is grammatically too ambiguous.

i.e.” is a latinism for " id est", which literally means “this is”, and it’s acceptedly used as “as example”.

Therefore, the problem is saying:

  • Password must contain at least one upper case letter [A−Z] strictly inside, this is, not as the first or the last character;

or

  • Password must contain at least one upper case letter [A−Z] strictly inside, as example, not as the first or the last character;

But a password like “A#Aa00000000A” is considered correct. I asked many native English speakers, both of them language enthusiasts, and agreed this is ambiguous at best, but it’s actually contradicting.

My guess is that one right statement should be:

  1. Password must contain at least one lower case letter [a-z]
  2. Password must contain at least one upper case letter [A−Z] inside (first or the last character won’t be considered)
  3. Password must contain at least one digit [0−9] inside;
  4. Password must contain at least one special character from the set { ‘@’, ‘#’, ‘%’, ‘&’, ‘?’ } inside;
  5. Password must be at least 10 characters in length, but it can be longer.

@admin

Thanks for reporting and explaining the ambiguity. Fixed.

1 Like