How to rotate: step-1: reverse row by slice step_2: generate tuple by zip function step_3: convert tuple to list step_4: warpper this list with "[]"
How to check whether two shapes match: 0 vs 0 0 vs 90 90 vs 90 90 vs 270
How to find the maxinum of all percentages: step_1: build a list which saves percentages and append all percentages into it step_2: if two shapes don't match, percentage = 0 step_3: find the maxinum of all the percentages by "max(iterable)"