Mistrzostwa Polski Szkół Średnich w Programowaniu Zespołowym 2024

2020-2022 2023 Regulations Schedule RODO info Ranking

Problem description


Literki
(literki)
Limit pamięci: 128 MB
Limit czasu: 1.00 s

Dane są dwa słowa złożone z małych liter alfabetu angielskiego o długości N. Operacja polega na wybraniu pewnej literki alfabetu i zastąpienie wszystkich jej wystąpień w obu słowach jakąś inną, dowolną literką. Ile minimalnie trzeba wykonać operacji, aby te dwa słowa były takie same?

Rozważmy taki przykład: mamy słowa aac oraz cba. Po zastąpieniu literki a literką b otrzymujemy słowa bbc oraz cbb, następnie jeśli zastąpimy literkę b literką c to oba słowa zmieniają się w słowo ccc.

Napisz program, który: wczyta oba słowa i wypisze na wyjście minimalną liczbę operacji potrzebnych, żeby oba słowa stały się identyczne.

Wejście

W pierwszym wierszu wejścia znaduje się pierwsze słowo, w drugim wierszu znajduje się drugie słowo.

Wyjście

W pierwszym (jedynym) wierszu wyjścia powinna się znaleźć jedna liczba całkowita: minimalna liczba operacji jaką trzeba wykonać, aby te dwa słowa były takie same.

Ograniczenia

1 ≤ N ≤ 1 000 000.

Przykład

Wejście Wyjście
aac
cba
2
Wejście Wyjście Wyjaśnienie
abcdz
bcdez
4

Przykładowy ciąg operacji:

  • b a (aacdz, acdez)
  • d c (aaccz, accez)
  • c a (aaaaz, aaaez)
  • a e (eeeez, eeeez)