|
|
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
разумеется, при этом под оптимизацию попадают все делители чисел 96 и 160 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 10:10 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Вторым шагом можно досклеить полученные биткарты пока пямяти хватает: например 13 и 17 склеятся в 884 байта (13 * 17 * 4). Хотя тут не факт что ускорение будет, т.к. маленькие вместе влезут в кэш проца, большие будут из памяти подкачиваться постоянно. С другой стороны чем меньше биткарт, тем быстрее будет считаться. Пока некогда, ближе к вечеру постараюсь написать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 10:11 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Написал. Летает. 50 счетчиков до лярда 0,2 сек. Но это 0.42 сек. Код: sql 1. 2. медленнее потому что склейка счетчиков не самая лучшая. В первом случае 50 склеилось в 4 счетчика, во втором всего в 9, хотя можно минимум в 4. Надо какой-то оптимальный алгоритм склейки. Суть в следующем: счетчик a занимает size_a = НОК(а,4) байта, счетчик b - size_b = НОК(b,4) байт, при слиянии займут size_ab = НОК(size_a, size_b) например а = 11 тогда size_a = 44, b = 18 => size_b = 36, после слияния счетчик ab займет size_ab = 396 И тут их надо так слить чтобы суммарно они не вылезли за 16 Мб. Я поставил 14. ХЗ как комбинировать. Пока сделал так: берем последний, поиск такого с которым size_ab минимальное, если нашли и памяти достаточно - слияние. ХЗ как оптимизировать. Факторизация и ... ? PS Сайт для проверки лежит, пока не затестить, но думаю пройдет тест. Исходник выкладывать или пусть желающие сами пишут по инструкции выше ? PPS Ссылку Fort Knox почитал по диагонали, нифига не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 15:11 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Или по другому, в случае ряда простых чисел типа Код: sql 1. разбить их на минимальное количество групп, так чтобы сумма произведений членов каждой группы была меньше заданного предела. например две группы Код: sql 1. Если в одну не сливается, то данное решение уже идеально, т.к. принципиально минимизировать количество групп, а не результат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 15:19 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
50 в 4 слилось так (лог) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. при загрузке склеиваются только если меньший влазит в больший кратно 2 раз ГрупповойИсходные01 2 4 5 8 10 16 20 25 32 40 5017 14 28 4923 6 12 24 483 474 23 46511 22 44643721 42841913 26 391019 381137129 18 361317 34143315311615 3017291827 После слияния групповых стало так ГрупповойИсходные01 2 4 5 8 10 16 20 25 32 40 50 15 30 13 26 39 19 38 17 3417 14 28 49 21 42 33 11 22 44 3123 6 12 24 48 27 9 18 36 29 23 46 373 47 43 41 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 16:09 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Dima TНаписал. Летает. Здорово, если пройдет тест на скорость. Dima TСсылку Fort Knox почитал по диагонали, нифига не понял. Дык, XOR множеств. Отличие от формулы включений-исключений только в том, что надо дважды вычитать то, что пересеклось. По идее слагаемых должно быть 2^x, но реально их намного меньше, т.к. лампочки, входящие в пересечение нескольких множеств часто оказываются дальше последней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 16:30 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Dima T, я чувствуется опыт Решета Эратосфена. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 17:38 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
maytonDima T, я чувствуется опыт Решета Эратосфена. Тут все из него. От теории до реализации. Придумал оптимизацию счетчиков. Сворачивается в 4 счетчика. Время 0.3-0.4 сек на самых тяжелых случаях. Никто не высказался против выкладывания исходника, поэтому выкладываю. Думаю рядовым студентам он бесполезен, а олимпийцы только опыта поднаберутся. Тупым гуглением олимпиаду не выиграть. Исходник (многа букав) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. PS На проверку не отправил, т.к. сайт-проверялка лежит. У меня итого сходится с предыдущими реализациями. Завтра утром зашлю, если оживет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.02.2016, 19:57 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
maytonDima T, я чувствуется опыт Решета Эратосфена. Только сейчас понял что тогда к Эратосфену надо было прикрутить эту идею со склеивающимися счетчиками, а то я какие-то велосипеды с квадратными колесами изобретал в виде счетчиков с переменным шагом 17486621 . В итоге вся оптимизация закончилась на 3-ке, а так можно заготовку биткарты сделать и ее использовать для инициализации (для 2,3,5,7,11 потребуется всего 9 Кб). Надо будет добавить туда как-нибудь. А то я там "рекорды" ставил распараллеливанием на 4 ядра. Судя по этим замерам там тоже должно ускориться в 3-5 раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2016, 09:27 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Задача сдана ? Не могу даже условие посмотреть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2016, 02:01 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Не сдана. Там все сломалось http://acmp.ru/index.asp?r=151923784153675657266782 [20.02] Уважаемые пользователи! В связи с техническими сложностями (вышел из строя веб-сервер) сайт был недоступен и в настоящее время используется его копия. В связи с малой мощностью предоставленного сервера возможность авторизации пользователям будет ограничена (участники раздела "Курсы", спонсоры и т.д. смогут решать задачи в любое время, остальные - по воскресеньям и с 17:00 до 4:00 в другие дни)... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2016, 15:12 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Вот к чему приводит возведение 99 десять раз в степень 99. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2016, 17:07 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Заслал на проверку. Прошел все тесты. Время 0,397 сек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2016, 17:26 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Ты крут как варёные яйца. А я щас делаю задачу с укладкой домино. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2016, 18:22 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
maytonТы крут как варёные яйца. А я щас делаю задачу с укладкой домино. в пятничную тему не выноси. Не сдержусь Работы навалили со всех сторон одновременно. Я в Эратосфена начал вписывать то что тут родилось, взлетел он немного с 23 до 27 млн в сек., но не все дописал. Мысли еще есть, времени пока нет. С паспортами тоже почти закончил 18772620 , чуть-чуть доделать, потестить и готовый продукт будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.02.2016, 19:57 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Dima TЗаслал на проверку. Прошел все тесты. Время 0,397 сек. Поздравляю ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2016, 07:07 |
|
||
|
Тяпничные лампочки
|
|||
|---|---|---|---|
|
#18+
Dima TmaytonТы крут как варёные яйца. А я щас делаю задачу с укладкой домино. в пятничную тему не выноси. Не сдержусь Работы навалили со всех сторон одновременно. Я в Эратосфена начал вписывать то что тут родилось, взлетел он немного с 23 до 27 млн в сек., но не все дописал. Мысли еще есть, времени пока нет. С паспортами тоже почти закончил 18772620 , чуть-чуть доделать, потестить и готовый продукт будет. И не подумаю. Я до 4.00 утра просидел с домино. Пока не понял что алгоритм волны не покрывает общий случай. И нужен поиск в глубину. Да ну ево в пень. Будет настроение - опубликую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.02.2016, 12:17 |
|
||
|
|

start [/forum/topic.php?fid=16&startmsg=39171024&tid=1340780]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
178ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 247ms |
| total: | 528ms |

| 0 / 0 |
