Головна » Статті » Олімпіада » Завдання

Задача Картки

Вчителька, яка викладає англійську мову в початкових класах, попросила Марійку надрукувати картки з буквами, за допомогою яких вона зможе складати слова, що вивчаються на уроці. На кожній картці записується одна буква. Вчителька щоразу ставить лише одне слово зі списку слів, що вивчаються. Марійка хоче дізнатися, яке мінімальне число карток з літерами потрібно надрукувати.

Напишіть програму, яка обчислить мінімальний набір карток, необхідний для складання будь-якого слова із заданого списку.

У першому рядку вхідного файлу міститься одне ціле число N (1 ≤ N ≤ 100) - кількість слів у списку. Далі йдуть N рядків, в кожному рядку міститься слово, яке складається з великих англійських букв, довжиною не більше 20 букв.

У вихідний файл вивести букви, які потрібно надрукувати, і через прогалину кількість карток із цією літерою. Букви та їх кількість вивести в алфавітному порядку.

Приклад вхідних та вихідних даних

Input.txt Output.txt

2

CAT

 BALL

A 1

В 1

C 1

L 2

 T 1

ПРОПОНУЄМО ШЛЯХ РОЗВ'ЯЗАННЯ:

Уявимо, що потрібні такі слова:

BAD

DADDE

В перший масив заносимо букви

В другий – їх кількість у поточному слові

В третій максимальну кількість таких букв

 

Після роботи з першим словом отримаємо:

Масив 1

A

B

C

D

E

F

G

H

...

Масив 2

1

1

 

1

 

 

 

 

 

Масив 3

1

1

 

1

 

 

 

 

 

 

 

 

 

 

Після роботи з другим  словом отримаємо:

 

Масив 1

A

B

C

D

E

F

G

H

...

Масив 2

1

 

 

3

1

 

 

 

 

Масив 3

1

1

 

3

1

 

 

 

 

 

Категорія: Завдання | Додав: admin (27.11.2014)
Переглядів: 79 | Рейтинг: 0.0/0
Всього коментарів: 0
Додавати коментарі можуть лише зареєстровані користувачі.
[ Реєстрація | Вхід ]