Tim's Blog

Notes & thoughts

Archive for Декабрь 2010

Задачи на собеседовании в ABBYY

6 комментариев

Довелось мне на днях побывать на собеседовании в ABBYY.

Подробности описывать лениво. Просто ряд задачек, что они дают:

1.  Можно ли заказать семь гирь так, чтобы получить возможность взвешивать на чашечных весах слитки золота от 1 грамма до 1 килограмма? (гири можно класть на любую из чашек). Считать, что слиток золота весит целое число граммов.

2.  В ящике лежит m белых и n черных шаров. Из ящика случайным образом вынимаются по 2 шара. Если вынули 2 шара разного цвета (черный и белый), то в ящик возвращают 1 черный шар. Если вынули 2 шара одинакового цвета (2 белых или 2 черных), то в ящик возвращают 1 белый шар. Считается, что снаружи ящика есть достаточное количество белых шаров, чтобы их вовращать, если вынимается два черных шара. Можно ли, зная числа m и n, сказать, какой шар останется в ящике последним?

3. На языке «Гуси» одного африканского племени словами записаны следующие числа. Язык настоящий, реально действующий.

57 emerongo etano na itano na ibere

82 emerongo etano na etato na ibere

230 amagana abere na emerongo etato

308 amagana atato na itano na itato

705 amagana atano na abere na itano

Напишите на этом языке 28 и 837.

 

4. Даны две длинные текстовые строки (длинной  K и N, где K<=N). В каждой строке записаны различные (т.е. внутри одной строки нет пар одинаковых) натуральные числа, разделенные одиночными пробелами. Числа в строках могут быть очень длинными, например 100 значными. Написать программу, которая находит все числа, которые встречаются в обеих строках сразу, и выводит на экран их позиции в обеих строках. Количество элементарных операций, выполняемых в программе, должно быть O(N) (т.е пропорционально N, не более того) и не зависеть, в частности, от длин чисел. Количество байт используемой дополнительной памяти O(K) (т.е. пропорционально K, не более того).

 

5. Дана функция f(x,y): f(x,0)=x^2; f(0,y)=y^5+y;f(x,y)=[f(x-1, y)^3 + f(x, y-1)]^4. Написать программу, вычисляющую f.

 

6. Дана строка длинной N. Строка состоит из слов, разделенных пробелами. Написать программу, которая меняет порядок СЛОВ (не символов а слов) в строке. Память: O(1), время O(N).

 

 

 

Written by timvilkov

29 декабря, 2010 at 9:23 пп

Опубликовано в Работа (Job)

Tagged with