eolymp
bolt
Try our new interface for solving problems
Problems

Программа психологического исследования программ

Программа психологического исследования программ

Компания "Макрохард" заказала у одного известного психолога полное психологическое обследование всех работников компании. Психолог, привлеченный для проведения обследования, известен своим инновационным методом, позволяющим составить полную психологическую картину сотрудника по наиболее часто используемому им в программах идентификатору. Однако, к сожалению, программа, используемая в анализе, оказалась неожиданно испорчена вирусом, поэтому требуется срочно написать новую. Помогите известному психологу. Напишите программу, которая по приведенной программе выяснит наиболее часто используемый в ней идентификатор. Поскольку разные сотрудники компании пишут программы на разных языках программирования, ваша программа должна уметь работать с произвольным языком. Поскольку в разных языках используются различные ключевые слова, то список ключевых слов в анализируемом языке предоставляется на вход программе. Все последовательности из латинских букв, цифр и знаков подчеркивания, которые не являются ключевыми словами и содержат хотя бы один символ, не являющийся цифрой, могут быть идентификаторами. При этом в некоторых языках идентификаторы могут начинаться с цифры, а в некоторых - нет. Если идентификатор не может начинаться с цифры, то последовательность, начинающаяся с цифры, идентификатором не является. Кроме этого, задано, является ли язык чувствительным к регистру символов, используемых в идентификаторах и ключевых словах. \InputFile Первая строка входного файла содержит число \textbf{n} - количество ключевых слов в языке (\textbf{0} ≤ \textbf{n} ≤ \textbf{50}), и два слова \textbf{c} и \textbf{d}, каждое из которых равно либо "\textbf{yes}", либо "\textbf{no}". Слово \textbf{c} равно "\textbf{yes}", если идентификаторы и ключевые слова в языке чувствительны к регистру символов, и "\textbf{no}", если нет. Слово \textbf{d} равно "\textbf{yes}", если идентификаторы в языке могут начинаться с цифры, и "\textbf{no}", если нет. Следующие \textbf{n} строк содержат по одному слову, состоящему из букв латинского алфавита и символов подчеркивания - ключевые слова. Все ключевые слова непусты, различны, при этом, если язык не чувствителен к регистру, то различны и без учета регистра. Длина каждого ключевого слова не превышает \textbf{50} символов. Далее до конца файла идет текст программы. Он содержит только символы с \textbf{ASCII}-кодами от \textbf{32} до \textbf{126} и переводы строки. Размер входного файла не превышает \textbf{10} килобайт. В программе есть хотя бы один идентификатор. \OutputFile Выведите в выходной файл идентификатор, встречающийся в программе максимальное число раз. Если таких идентификаторов несколько, следует вывести тот, который встречается в первый раз раньше. Если язык во входном файле не чувствителен к регистру, то можно выводить идентификатор в любом регистре.
Time limit 2 seconds
Memory limit 256 MiB
Input example #1
0 yes no
int main() {
  int a;
  int b;
  scanf("%d%d", &a, &b);
  printf("%d", a + b);
}
Output example #1
int
Author Андрей Станкевич