Ամենաերկար ընդհանուր վերջավորության հարցումներ

(Rap battle)
Ձեզ խնդրում են գրել ծրագիր, որը ստանալով n տարբեր բառերից կազմված ցուցակ և q հարցվող բառերի ցանկ , պետք է գտնի այն բառը ցուցակից a, որը լեքսիկոգրաֆիական կարգով ամենափոքրն է, տարբերվում է w-ից և ունի w-ի հետ ամենաերկար ընդհանուր վերջավորությունը:

Մուտք

Մուտքի առաջին տողում տրված է n ամբողջ թիվը (2 ≤ n ≤ 25 000), որը ներկայացնում է ցուցակում եղած բառերի քանակը:
Հաջորդ n տողերում տրված են այդ բառերը: Բոլոր բառերը բաղկացած են դիտարկվող լեզվի փոքրատառատառ լատինատառ символներից, և ամեն բառի երկարությունը չի գերազանցում 30 նիշը:
Հաջորդ տողում տրված է q ամբողջ թիվը (1 ≤ q ≤ 25000), որը ներկայացնում է հարցվող բառերի քանակը:
Հաջորդ q տողերում տրվում են հարցվող բառերը:
Յուրաքանչյուր բառ բաղկացած է փոքրատառ լատինատառ символներից, և դրա երկարությունը չի գերազանցում 30 նիշը:

Ելք

Յուրաքանչյուր հարցվող բառի համար պետք է տպել մեկ տող, որտեղ ներկայացված կլինի ցուցակից այն լեքսիկոգրաֆիական կարգով ամենափոքր բառը, որը տարբերվում է հարցվող բառից և ունի նույն հարցվող բառի ամենաերկար ընդհանուր վերջավորությունը:

Օրինակներ

Input
Output
4 perfect rhyme crime time 2 crime rhyme
time crime
 
 

Constraints

Time limit: 5 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue