Musala Soft Logo Конкурс по програмиране на Musala Soft и PC Magazine Bulgaria PC Magazine Bulgaria Logo
  Състезателна система
Сезон 2010 - 2011
Сезон 2009 - 2010
Сезон 2008 - 2009
Сезон 2007 - 2008
Сезон 2006 - 2007
Сезон 2005 - 2006
Сезон 2004 - 2005
Сезон 2003 - 2004
Сезон 2002 - 2003
Правила
Задача 1
Задача 2
Задача 3
Задача 4
Задача 5
Задача 6
Класиране
Финален кръг
Сезон 2001 - 2002
Сезон 2000 - 2001

Задача 1 от брой 10/2002 - КОМПРЕСИЯ


The Winner
Николай Николов (в средата), победителят в първи кръг на конкурса по програмиране, получи Грамота и талон за покупка на компютърни компоненти на стойност 50USD от управителя на Мусала Софт Делян Лилов. По коледните празници Николай не скуча; Нели Бенова-Димитрова, PR на Haemimont Games връчи едно от първите копия на играта "Келтски крале". Николай получи и мултимедийния пакет Classic Business English на Ogy&Edimit и книгите "Delphi 6.0" на ИнфоДАР и "Хакери" на ИК ЛираПринт.


"Младият и амбициозен програмист Пиер си търси работа. В интернет намерил обява за работа в новосъздадената софтуерна фирма "Монблан Ложи" - компания с амбицията да намери своето достойно място на пазара за програмни продукти, особено в областта на модерните технологии. След проведеното интервю, на което Пиер се представил отлично, ръководството на фирмата решило да му постави и една задача за програмиране - интервюто си е интервю, а програмирането..."

Пълното условие на задачата (RTF Format) можете да намерите в брой 10/2002 на списание PC Magazine или да свалите от тази страница.


Коментар по условието на задача 1:

  1. Едно число е изписано с един шрифт т.е. еднаквите му цифри са изписани по един и същ начин.
  2. Числото във входния файл НЕ започва с 0 (нула).


Класиране:

Място Име Град Общо
1 Николай Николов Ямбол 98
2 Петър Митров София 91
3 Илия Тоцев Плевен 65
4 Георги Цанков София 61
5 Никола Арнаудов София 60
6 Иван Станишев Габрово 59
6 Камен Добрев София 59
6 Красимир Маринов Русе 59
9 Николай Чилев София 56
10 Андрей Николов София 50
11 Борислав Първанов Русе 49
12 Валентин Михов Варна 47
12 Радослав Герганов София 47
14 Владимир Недев Варна 45
15 Йордан Гордеев В.Търново 43
16 Кирил Арабаджийски Пловдив 40*
17 Петър Петров Шумен 39
18 Стефан Ташев Ямбол 37
19 Иван Георгиев Бургас 36
20 Мартин Чилев В.Търново 32
21 Иван Анев София 31
22 Васил Сакъров В.Търново 29
23 Димо Велев София 27
23 Иван Бобев Сливен 27
25 Валери Вучов София 23
26 Антон Димитров Варна 21
27 Тихомир Стоянов Първомайци 20
28 Александър Леков Хасково 19
28 Владислав Димитров Хасково 19
28 Свилен Колев София 19
31 Янислав Трендафилов София 17
32 Николай Семов Хасково 14
33 Владимир Ралев Бургас 12
34 Иван Тончев София 11
35 Васил Китанов Благоевград 10
35 Любомир Славилов София 10
37 Илиян Илиев София 9
38 Владимир Ичков Варна 8
39 Захари Захариев Монтана 6
40 Костадин Караманлиев Айтос 5
41 Станимир Марков София 4
41 Стойчо Петров Ихтиман 4
41 Траяна Танкова София 4
41 Яна Делчева Бургас 4
45 Иван Стоянов София 3
46 Веселин Петров Ихтиман 2
46 Димитър Атанасов Габрово 2
46 Мирослав Калъпов Казанлък 2
46 Стефан Георгиев Чирпан 2
50 Ивайло Каменаров Русе 1
51 Ангел Великов София 0
51 Ангел Гаврилов Бургас 0
51 Антони Средков Бургас 0
51 Атанас Крачев Стара Загора 0
51 Борис Даскалов София 0
51 Владимир Молотков София 0
51 Георги Друмев Бургас 0
51 Димитър Попов София 0
51 Иван Йосифов София 0
51 Иван Попов София 0
51 Кирил Минков Пловдив 0
51 Красимир Милчев София 0
51 Милослав Средков Бургас 0
51 Мирослав Недев Варна 0
51 Николай Тодоров София 0
51 Павел Панов София 0
51 Петко Минков Пловдив 0
51 Пламен Георгиев София 0
51 Светла Петкова Бургас 0
51 Светослав Колев Русе 0
51 Стоян Христов Разград 0

*Решението на Кирил Арабаджийски беше получено след крайния срок и няма да бъде включено в общото класиране.

**Решението на Стоян Йорданов не е включено в класирането поради факта, че от 1.12.2002 работи в Мусала Софт, т.е. няма право да участва в Конкурса.

Също така, можете да видите пълното класиране по тестове и големините на копресираните файлове за всеки тест.


Тестове:

Тестовете (ZIP Format), въз основа на които журито е формирало класирането, са достъпни за всички. Можете да ги намерите чрез съответния линк.


Коментар по решението и резултатите на участниците:

Първата задача в тазгодишното издание на Конкурса беше свързана с един често срещан проблем в наши дни - компресирането на данни. To вече е задължителна част от определен вид софтуерни продукти, поради постоянно нарастващия обем на данните, с които те боравят. Участниците трябваше да компресират растерно изображение на десетично число и после да го декомпресират. Този който постигне най-голяма компресия (най-малка големина на компресирания файл) за даден тест, получава и максималния брой точки, а останалите - пропорционално на големината на решението. Основен проблем при немалко участници се оказа грешното декомпресиране, т.е. невъзможността да се възстанови началното изображение на числото. Все пак, повечето участници успяха да намерят свое решение на поставената задача. Предвид необичайния начин на оценяване, обаче, някои вярно работещи решения получават сравнително малък брой точки.
Най-добре представилите участници са Николай Николов (победителят в този кръг) и Петър Митров. Техните решения можете да намерите чрез линка по-долу.

Предлагаме Ви и алгоритмичен анализ на задача 1.


Задача 1 (Компресия) - участници (по дата и час на последното получено решение):

 1. Атанас Крачев - Стара Загора - 02.11.2002, 17:45
 2. Иван Йосифов - София - 10.11.2002, 15:58
 3. Димитър Атанасов - Габрово - 11.11.2002, 09:26
 4. Янислав Трендафилов - София - 12.11.2002, 14:53
 5. Николай Семов - Хасково - 13.11.2002, 18:22
 6. Илия Тоцев - Плевен - 14.11.2002, 00:27
 7. Стойчо Петров - Ихтиман - 14.11.2002, 02:04
 8. Павел Панов - София - 14.11.2002, 06:23
 9. Красимир Маринов - Русе - 14.11.2002, 20:10
10. Валери Вучов - София - 16.11.2002, 11:56
11. Владимир Ралев - Бургас - 16.11.2002, 20:20
12. Иван Бобев - Сливен - 16.11.2002, 20:29
13. Иван Стоянов - София - 17.11.2002, 12:14
14. Захари Захариев - Монтана - 17.11.2002, 16:08
15. Петър Петров - Шумен - 17.11.2002, 16:26
16. Андрей Николов - София - 17.11.2002, 23:00
17. Костадин Караманлиев - Айтос - 18.11.2002, 13:04
18. Мирослав Калъпов - Казанлък - 18.11.2002, 15:12
19. Стефан Ташев - Ямбол - 18.11.2002, 17:06
20. Ивайло Каменаров - Русе - 18.11.2002, 21:10
21. Васил Сакъров - Велико Търново - 19.11.2002, 09:15
22. Илиян Илиев - София - 19.11.2002, 09:48
23. Борислав Първанов - Русе - 19.11.2002, 13:31
24. Радослав Герганов - София - 19.11.2002, 17:56
25. Николай Чилев - София - 19.11.2002, 18:44
26. Иван Георгиев - Бургас - 19.11.2002, 19:11
27. Владислав Димитров - Хасково - 19.11.2002, 20:14
28. Валентин Михов - Варна - 19.11.2002, 22:30
29. Васил Китанов - Благоевград - 20.11.2002, 10:19
30. Траяна Танкова - София - 20.11.2002, 11:11
31. Мартин Чилев - Велико Търново - 20.11.2002, 11:17
32. Антони Средков - Бургас - 20.11.2002, 13:01
33. Стефан Георгиев - Чирпан - 20.11.2002, 14:12
34. Иван Анев - София - 20.11.2002, 15:28
35. Мирослав Недев - Варна - 20.11.2002, 16:15
36. Станимир Марков - София - 20.11.2002, 16:21
37. Владимир Ичков - Варна - 20.11.2002, 16:44
39. Иван Попов - София - 20.11.2002, 17:06
39. Тихомир Стоянов - Първомайци - 20.11.2002, 17:30
40. Стоян Христов - Разград - 20.11.2002, 18:14
41. Борис Даскалов - София - 20.11.2002, 18:47
42. Антон Димитров - Варна - 20.11.2002, 19:59
43. Николай Николов - Ямбол - 20.11.2002, 20:04
44. Яна Делчева - Бургас - 20.11.2002, 20:14
45. Светла Петкова - Бургас - 20.11.2002, 20:19
46. Пламен Георгиев - София - 20.11.2002, 21:16
47. Ангел Гаврилов - Бургас - 20.11.2002, 21:17
48. Иван Станишев - Габрово - 20.11.2002, 21:31
49. Ангел Великов - София - 20.11.2002, 21:35
50. Георги Друмев - Бургас - 20.11.2002, 21:17
51. Николай Тодоров - София - 20.11.2002, 22:03
52. Светослав Колев - Русе - 20.11.2002, 22:45
53. Свилен Колев - София - 20.11.2002, 22:49
54. Йордан Гордеев - Велико Търново - 20.11.2002, 22:51
55. Александър Леков - Хасково - 20.11.2002, 22:52
56. Любомир Славилов - София - 20.11.2002, 23:05
57. Веселин Петров - Ихтиман - 20.11.2002, 23:05
58. Владимир Недев - Варна - 20.11.2002, 23:05
59. Димитър Попов - София - 20.11.2002, 23:12
60. Никола Арнаудов - София - 20.11.2002, 23:13
61. Камен Добрев - София - 20.11.2002, 23:39
62. Георги Цанков - София - 20.11.2002, 23:40
63. Петър Митров - София - 20.11.2002, 23:40
64. Стоян Йорданов - София - 20.11.2002, 23:42
65. Красимир Милчев - София - 20.11.2002, 23:43
66. Иван Тончев - София - 20.11.2002, 23:46
67. Владимир Молотков - София - 20.11.2002, 24:00
68. Кирил Минков - Пловдив - 20.11.2002, 24:00
69. Петко Минков - Пловдив - 20.11.2002, 24:00
70. Милослав Средков - Бургас - 20.11.2002, 24:00
71. Димо Велев - София - 20.11.2002, 24:00
72. Кирил Арабаджийски - Пловдив - 21.11.2002, 21:01 ---> закъсняло решение

Решения на всички участници:

За да може всеки лично да се убеди защо класирането е такова и защо има X, а не Y точки, публикуваме всички изпратени решения заедно с изходните кодове на всички програми (с изключение на тези, които пожелаха сорсът им да не се публикува).
За всеки участник са създадени .log файлове, които отразяват как са преминали тестовете върху програмата му. Въпросният .log файл се дава само за да добиете представа защо получавате точките, които са ви дадени, но не винаги отразява точната причина за провала на тестовете. Имайте предвид това.


Контестации:

Контестации могат да се подават от всички участници, стига да са основателни. Ще се разглеждат само претенции на участници, които са оценени неправилно в резултат от грешка на журито. Моля преди да изпратите контестация, внимателно прочетете условието на задачата за да прецените дали тя е основателна. Журито ще отговори на всички ваши въпроси, свързани с оценяването.


За въпроси можете да ни пишете на адрес: konkurs@musala.com.

Supported by Musala Soft Ltd.

Copyright 2000-2010 by Musala Soft Ltd. All rights reserved.