| Автор |
SRM 359 |
webmaster
Головний Адміністратор

Повідомлень: 1136
Зареєстрований: 17.03.07 |
| Опубліковано 21-07-2007 20:47 |
|
|
Цікавий контест і напевно є багато питань.
От мене наприклад мене цікавить як гарно зробити задачу 500 (перший дів). |
|
| Автор |
RE: SRM 359 |
Mace Windu
Користувач
Повідомлень: 141
Звідки: НУ "ЛП"
Зареєстрований: 13.04.06 |
| Опубліковано 21-07-2007 21:10 |
|
|
|
В принципі, я свою тисячку просто не встиг здати. Ще й нет за 5 хв. до кінця контесту пропав... Хоча навряд чи я встиг би її віддебагати за цей час. |
|
| Автор |
RE: SRM 359 |
webmaster
Головний Адміністратор

Повідомлень: 1136
Зареєстрований: 17.03.07 |
| Опубліковано 22-07-2007 02:22 |
|
|
|
Mace Windu написав:
Хоча навряд чи я встиг би її віддебагати за цей час.
Якщо ідеться про задачу із колами, то я також якраз дебагав її більше часу ніж над нею думав. Врезультаті так і не зробив її  |
|
| Автор |
RE: SRM 359 |
Torax
Користувач

Повідомлень: 75
Звідки: ЛНУ
Зареєстрований: 03.03.06 |
| Опубліковано 22-07-2007 10:52 |
|
|
на рахунок 500-ки. Там вся ідея в тому, щоб перебрати всі можливі комбінації з трьох точок і визначити за ними параметри кола, які однозначно його (коло) ідентифікують - координати центру та радіус. Формули, за якими це можна зробити можна знайти на algolist.manual.ru. Далі я просто зробив клас кола, для якого визначив операцію менше, та й пхав всі знайдені кола в сет. В результаті в сеті залишилися унікальні кола, от і все. Але найгірше було те, що в тому способі, за яким я шукав кола, важливе розташування трьох точок, які визначають коло, одна відносно іншої. Якщо якісь дві точки будуть з однаковими абсцисами, то треба буде міняти їх порядок, бо інакше буде ділення на нуль (гляньте формули на алголісті, або в моєму сорсі). Ну і плюс там ще два варіанти, за якими знаходиться координата Y по відомій X. Якщо в одному випадку буде ділення на нуль, то треба вибрати другий варіант. От і все... Вся складність задачі в формулах знаходження кола, які я успішно здер з алголісту.  |
|
| Автор |
RE: SRM 359 |
Mace Windu
Користувач
Повідомлень: 141
Звідки: НУ "ЛП"
Зареєстрований: 13.04.06 |
| Опубліковано 22-07-2007 13:22 |
|
|
Ні. В 2 дивізіоні 1000 була інша. Там треба було розкодувати послідовність символів, які передавалися у форматі UTF-8. Проблема в тому що там в послідовності могли бути некоректні символи, які треба було фільтрувати. Хоча взагалі то задача проста була, просто коду багато.
На форумі топкодера є цікаве рішення для вашої 500:
http://forums.topcoder.com/?module=Thread&threadID=582180&start=0
P.S. Скільки грошей в середньому дають за перше місце в кімнаті 2 дивізіону? =)
Змінив(ла) Mace Windu, 22-07-2007 13:23 |
|
| Автор |
RE: SRM 359 |
Torax
Користувач

Повідомлень: 75
Звідки: ЛНУ
Зареєстрований: 03.03.06 |
| Опубліковано 22-07-2007 13:38 |
|
|
|
десь 25 в середньому |
|
| Автор |
RE: SRM 359 |
Torax
Користувач

Повідомлень: 75
Звідки: ЛНУ
Зареєстрований: 03.03.06 |
| Опубліковано 22-07-2007 13:40 |
|
|
|
ще би зрозуміти як то він перевіряє чи ті точки знаходяться на одному колі.... ) |
|
| Автор |
RE: SRM 359 |
ibm
Користувач

Повідомлень: 422
Звідки: LPML
Зареєстрований: 21.02.07 |
| Опубліковано 22-07-2007 17:22 |
|
|
Да... $25 при сумі в $5,000!... От жлоби!!!
250 з другого дивізіону мене вражає. Хто-небудь знає чого завжди правильно - чи то (i%6==0) && i чи ((i+1)%6) ставити?..
Pascal not dead! |
|
| Автор |
RE: SRM 359 |
Mace Windu
Користувач
Повідомлень: 141
Звідки: НУ "ЛП"
Зареєстрований: 13.04.06 |
| Опубліковано 22-07-2007 18:26 |
|
|
Ти все правильно написав. Просто ти спочатку міняв, а потім додавав, а я додавав, а потім міняв:
Мії код:
for(i=0; i < runs.size();i++) { if(f) x1+=runs[i]; else x2+=runs[i]; if(runs[i]%2==1) f=!f; if(i%6==5) f=!f; }
Твій:
for (int c=0; i < r.size(); i++) { n=r[i]; if ((i%6==0) && (i!=0)) {if (c==0) c=1; else c=0;} -
p[c]=p[c]+n; -
if (n%2==1) {if (c==0) c=1; else c=0;} } -
Змінив(ла) Mace Windu, 22-07-2007 18:27 |
|
| Автор |
RE: SRM 359 |
webmaster
Головний Адміністратор

Повідомлень: 1136
Зареєстрований: 17.03.07 |
| Опубліковано 22-07-2007 23:22 |
|
|
|
Torax написав:
десь 25 в середньому
Тепер дають десь так:
І дів:
$60 перше
$40 друге
$25 третє
ІІ дів:
$25 перше
$16 друге
Раніше було взагалі супер, за третє місце давала $100 !!!!
Я думаю, що давно пора збільшувати призовий фонд. Бо подивитися скільки грошей виграють на Дизайні, або Девелопінгу, то аж страшно. Навіть можна назвати "дискрімінацією". |
|
| Автор |
RE: SRM 359 |
Torax
Користувач

Повідомлень: 75
Звідки: ЛНУ
Зареєстрований: 03.03.06 |
| Опубліковано 23-07-2007 00:03 |
|
|
|
ну там кількість грошей залежить від кількості кімнат, а вона не є сталою.. |
|
| Автор |
RE: SRM 359 |
ibm
Користувач

Повідомлень: 422
Звідки: LPML
Зареєстрований: 21.02.07 |
| Опубліковано 23-07-2007 10:43 |
|
|
А тю, й забув, що це - по кімнатах... Туповато, що не враховують ще сумарні (за дивізіоном) результати...
Pascal not dead! |
|
| Автор |
RE: SRM 359 |
webmaster
Головний Адміністратор

Повідомлень: 1136
Зареєстрований: 17.03.07 |
| Опубліковано 24-07-2007 00:56 |
|
|
|
Torax написав:
ну там кількість грошей залежить від кількості кімнат, а вона не є сталою..
тепер, якщо контест на гроші, то людей під максимум ~1300 чол |
|
| Автор |
RE: SRM 359 |
webmaster
Головний Адміністратор

Повідомлень: 1136
Зареєстрований: 17.03.07 |
| Опубліковано 24-07-2007 00:58 |
|
|
|
ibm написав:
А тю, й забув, що це - по кімнатах... Туповато, що не враховують ще сумарні (за дивізіоном) результати...
Гроші там дають, для того щоб заохочувати приймати участь.
І якщо ти ламак (наприклад), то тобі може попастися ще більш ламацька кімнати і там виграєш. |
|