Busca pela janela mínima contendo todos os caracteres da string padrão

C# Hard strings

Tarefa «Busca pela janela mínima contendo todos os caracteres da string padrão»

Dadas duas strings: s e t. É necessário encontrar a menor substring (janela) em s que contenha todos os caracteres de t (incluindo repetições). Se tal janela não existir, exibir uma string vazia. Garante-se que as strings consistem em letras minúsculas do alfabeto latino. Comprimentos das strings: 1 ≤ |s|, |t| ≤ 10^5.

Formato de Entrada

Na primeira linha — a string s. Na segunda linha — a string t.

Formato de Saída

Uma única linha — a menor substring procurada, ou uma string vazia se não houver solução.

Exemplos

Exemplo 1

ENTRADA
ADOBECODEBANC ABC
SAÍDA
BANC

Exemplo 2

ENTRADA
a b
SAÍDA
main.cs