Find patterns in numbers based on the similarity of characters? Task

The task is to write a script that accepts a number from 1 to 20 inclusive. It will then check if the number has a character that is found in every number that was entered before it. If the number has a character in common it will ask for another number. However if the number does not have a character in common with any of the previous numbers the program will halt

You are given the following array which is named as numbers

{"one","two","three","four","five","six","seven","eight","nine","ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen","twenty"}


Example runs

Say the following number is given

1


There are no previous numbers so it shares a character will every previous number. So the program will ask for another number, let the following number be given

3


one and three both share the character "e" so this is a valid number. So we given another number, let the following number be given

4


four does not share the "e" common to both one and three so this breaks the pattern so the program now stops

Here is another run with just the output of the program shown

5
15
17
3
7
8
2


This script also had the pattern of numbers with the letter "e"  which caused "two" to break the pattern
Python 2, 48 46 bytes

Saved two bytes thanks to @ovs!



s=set(''.join(l))
while s:s&amp;=set(l[input()-1])


Try it online!

Renamed numbers to l. If that's not okay then add 10 bytes for l=numbers.