Canadian Computing Competition: 2016 Stage 1, Senior #1
An anagram of a string is formed by rearranging the letters in the string. For example, the anagrams of aab are aab, aba, and baa.
A wildcard anagram of a string is an anagram of the string where some of the letters might have been replaced with an asterisk (*
). For example, two possible wildcard anagrams of aab are *ab and *b*.
Given two strings, determine whether the second string is a wildcard anagram of the first string.
Input Specification
The two lines of input will both consist of characters. Each character in the first line will be a lowercase letter. Each character in the second line will be either a lowercase letter or an asterisk.
For 8 of the 15 available marks, the second line will not contain any asterisk characters.
Output Specification
Output the character A
if the string on the second line is a wildcard anagram of the string on the first line. Otherwise, output the character N
.
Sample Input 1
abba
baaa
Output for Sample Input 1
N
Sample Input 2
cccrocks
socc*rk*
Output for Sample Input 2
A
Comments
I hand-typed out a Python dictionary with every letter of the English alphabet set to zero for initialization. Not my best work....
just use the counter module