Слесарь 9 26 февраля, 2013 Опубликовано 26 февраля, 2013 · Жалоба Незнаю как и кто, но я ощущаю счастье в том, что пока еще могу себе позволить не работать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 26 февраля, 2013 Опубликовано 26 февраля, 2013 · Жалоба Воры в законе? :disco: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_Pasha 0 26 февраля, 2013 Опубликовано 26 февраля, 2013 · Жалоба Воры в законе? :disco: Вы ж поймите, что мы не виноватыя, что определенная категория населения нашей всеобъемлющей Родины живет по такому же распорядку дня :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Буратино 0 18 марта, 2013 Опубликовано 18 марта, 2013 · Жалоба Может вот так попробовать: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <stdarg.h> void str_cpy (char **a, const char *b) { int _size = strlen(b)+1; *a =realloc(*a, _size); memmove(*a, b, _size); } void str_cat (char **a, const char *b){ int _size1 = strlen(b); *a =realloc(*a, _size1); memmove(*a + strlen(*a), b, _size1); } int main() { char *s = NULL; str_cpy(&s, "Hola Hola"); str_cpy(&s, s+5); str_cat(&s," World"); return 0; } "str_cat" можно переписать как вызовс сдвигами "str_cpy". "memmove" потому как он хитро работает и учитывает перекрытия. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
igorle 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Может вот так попробовать: ... Я обещал не комментировать и никак иначе не помогать участникам. Так что, извините. Скажу только, что направление правильное, но пока что это не годится. Сплетнями поделться могу. Я спросил организаторов, как идут дела. Они сказали, что отказались от идеи предлагать удаленную работу программистам из России/Украины. Но от своих обязательств по олимпиаде не отказываются. И если кто сможет решить задачу, то премию получит. Пока никто не смог. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
skripach 5 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Незнаю как и кто, но я ощущаю счастье в том, что пока еще могу себе позволить не работать. А я вот напротив ощущаю счастье в том что могу позволить себе поработать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Буратино 0 19 марта, 2013 Опубликовано 19 марта, 2013 · Жалоба Я обещал не комментировать и никак иначе не помогать участникам. Так что, извините. Скажу только, что направление правильное, но пока что это не годится. Сплетнями поделться могу. Я спросил организаторов, как идут дела. Они сказали, что отказались от идеи предлагать удаленную работу программистам из России/Украины. Но от своих обязательств по олимпиаде не отказываются. И если кто сможет решить задачу, то премию получит. Пока никто не смог. Да фиг с ней с премией, просто интересно!:) "realloc" не перетирает информацию, ну или точнее дублирует информацию в переразмереном буфере, а это важно и для "str_cpy" и для "str_cat". "memmove" переставляет блоки данных даже если есть перекрытие, учитывая это. Лишнего ничего нет ,но функции свои функции выполняют. Проверка на NULL еще не обдумана, но это в конце концов детали. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба Пока никто не смог.Ой-ли... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
igorle 0 20 марта, 2013 Опубликовано 20 марта, 2013 (изменено) · Жалоба Ой-ли... Ничего удивительного. Когда я говорю "никто не смог", я имею ввиду - из России/Украины никто не смог решить. В целом - они в эту игру играют уже год. Список победителей за это время есть на их сайте. Изменено 20 марта, 2013 пользователем igorle Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
federal 0 20 марта, 2013 Опубликовано 20 марта, 2013 (изменено) · Жалоба На олимпиадное тут не тянет, даже далеко не тянет. p.s. форумчанам просто *бут мозх Изменено 20 марта, 2013 пользователем federal Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
am1808 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба отправил ради интереса void str_cpy( char** to_str, char* from_str ) { if ( !from_str ) { return; } if ( !( *to_str = ( char* )realloc( *to_str, strlen(from_str)*sizeof(char) + sizeof(char) ) ) ) { return; } if ( !memmove( *to_str, from_str, strlen( from_str )*sizeof(char) + sizeof(char) ) ) { if ( !*to_str ) { free( *to_str ); } *to_str=NULL; } } void str_cat(char** to_str, char* from_str) { if ( !from_str ) { return; } if ( !( *to_str = ( char* )realloc( *to_str, ( !*to_str ? 0: strlen(*to_str)*sizeof(char) ) + strlen(from_str)*sizeof(char) + sizeof(char) ) ) ) { return; } if ( !memmove( *to_str + ( !*to_str ? 0: strlen(*to_str)*sizeof(char) ), from_str, strlen( from_str )*sizeof(char) + sizeof(char) ) ) { if ( !*to_str ) { free( *to_str ); } *to_str=NULL; } } на что сразу же был получен ответ. Что,собственно, и ожидаемо Thank you for taking the time to answer our challenge. Unfortunately the answer you gave is not the answer we are looking for. I do hope that you at least enjoyed the challenge (-; In all solutions that don't pass this stage we find at least 2 problems from the list of blocking problems that you can find at http://www.hola.org/issues.html We realize that the bugs in your solution may have been due to a hasty submission. Therefore, if this was your 1st submission you are welcome re-check your code carefully, use the issues list we gave, and try a 2nd attempt. You can send this challenge to programmers you know and if they will answer the question perfectly then you and your friend may win 2K NIS...Please remember to CC me when you forward the link to the challenge so I will know they came from you (http://www.TheCodeIL.com/5min_forward_rules.html). Below is an email that you can use to forward to your friends. Good Luck and again, Thank you! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Буратино 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба Да, мне кое какие моменты нужно исправить.. Скажите, а нафига "sizeof(char)" делать? Один ведь будет во всех системах, или нет? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
am1808 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба размер типа правильно определять в runtime Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
demiurg_spb 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба размер типа правильно определять в runtimecompiletime всё же B) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Буратино 0 20 марта, 2013 Опубликовано 20 марта, 2013 · Жалоба размер типа правильно определять в runtime Но ведь char всегда 8 бит, зачем так делать? Я понимаю "int", там могут быть вопросы, но с "char" мне кажется лишним "сайзофать". Видимо в целом направление не верное в решении этой задачи. Поправлю свой вариант и попробуем иным путем пойти:) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться