android test 1 (PDF)




File information


This PDF 1.4 document has been generated by / Skia/PDF, and has been sent on pdf-archive.com on 02/02/2017 at 13:25, from IP address 94.153.x.x. The current document download page has been viewed 247 times.
File size: 98.78 KB (2 pages).
Privacy: public file










File preview


 
Тестовое задание. Позиция Android­разрабочик 
 

Задача 
Смоделировать процесс зарядки роботов. 
 
Условия 
6 роботов сидят за круглым столом с 6 розетками напротив каждого.  
 
Чтобы себя зарядить, необходимо использовать зарядное устройство, которое можно 
собрать из двух частей: вилки и кабеля.  
 

Одна часть лежит слева от каждого робота, вторая ­ справа. Рядом сидящие роботы 
конкурируют за владение этими частями. 
 
 
Роботы берут каждую из частей зарядного устройства независимо, то есть сначала одной 
рукой, а потом второй. 
 
Роботы садятся за стол с 50% заряда. Зарядное устройство добавляет 10% заряда за 
500 мс. Будем считать, что роботы заряжаются только интервалами кратными 500 мс.  
 
Каждую секунду роботы тратят 10% заряда на функционирование. 
 

Роботы могут иметь три ​
стратегии​

 
1) ​
случайная​
: если не полный заряд, дожидается доступности 2х частей устройства, 
заряжается на 10% и засыпает на 100­300мс (случайно) и повторяет; 
 
2) ​
жадная​
: если заряд меньше 60%, захватывает 2 части зарядного устройства и 
заряжается до 100%, а если больше, то проверяет условие раз в 500 мс; 
 
3) ​
джентльменская​
: если заряд у одного из соседей меньше, чем у него, то уступит часть 
зарядного устройства (засыпает на 200мс). 
 
Дополнительные условия 
 
Робот не может зарядится больше 100%. Если заряд опускается до 0 ­ робот 
отключается. 
Считать, что роботы садятся за стол одновременно и действия происходят в реальном 
времени. 
 
Моделирование можно закончить, если все роботы зарядились полностью или 
выключились. Возможна ситуация, например, когда 3 робота выключились а 3 зарядились 
полностью. 
 
Программа получает 6 параметров на вход ­ 6 чисел, означающих стратегию робота: 1/2/3 
соответственно. 
 
Программа должна логгировать изменения состояний роботов (уровень заряда и 
количество частей зарядного устройства). 
 
Решение 
 
Реализация может быть выполнена на любом из базовых языков программирования 
(C++, C#, Java).  Предпочтительно ­ Java. Готовое решение запаковать в .zip архив, 
содержащий все исходные коды (включая тесты, если они проводились), выполняемый 
файл и файл readme.txt с вашими комментариями к заданию.  






Download android test 1



android_test_1.pdf (PDF, 98.78 KB)


Download PDF







Share this file on social networks



     





Link to this page



Permanent link

Use the permanent link to the download page to share your document on Facebook, Twitter, LinkedIn, or directly with a contact by e-Mail, Messenger, Whatsapp, Line..




Short link

Use the short link to share your document on Twitter or by text message (SMS)




HTML Code

Copy the following HTML code to share your document on a Website or Blog




QR Code to this page


QR Code link to PDF file android_test_1.pdf






This file has been shared publicly by a user of PDF Archive.
Document ID: 0000548202.
Report illicit content