реклама на сайте
подробности

 
 
> Олимпиада программистов, Чистый С
igorle
сообщение Feb 25 2013, 09:05
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 338
Регистрация: 14-07-12
Пользователь №: 72 753



Не знаю, разрешено ли здесь такие сообщения давать. Но надеюсь, что модератор не обидится.
Знакомая компания проводит олимпиаду по программированию. Решили поискать программистов в русскоговорящем мире.

Меня попросили рассказать, где могу. А я только на этом форуме и бываю. Причем только в разделе для начинающих.
http://hola.org/challenge_ru.html

Надо написать две простые функции на чистом С.
Go to the top of the page
 
+Quote Post
7 страниц V  « < 4 5 6 7 >  
Start new topic
Ответов (75 - 89)
igorle
сообщение Mar 28 2013, 06:16
Сообщение #76


Местный
***

Группа: Свой
Сообщений: 338
Регистрация: 14-07-12
Пользователь №: 72 753



Цитата(demiurg_spb @ Mar 28 2013, 10:05) *
Отправлял и с ... и с ...

Я позвонил человеку, который просил меня сделать перевод. Он сегодня не работает (в Израиле сейчас неделя праздников), поэтому сгодня проверить как так получилось не может. Вернется на работу во вторник.
Сопроводительное письмо было? На английском?

Сообщение отредактировал igorle - Mar 28 2013, 06:16
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 28 2013, 06:23
Сообщение #77


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(igorle @ Mar 28 2013, 10:16) *
Сопроводительное письмо было? На английском?
Нет. Только код. А надо?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Буратино
сообщение Mar 28 2013, 06:40
Сообщение #78


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 27-10-08
Из: Украина, Киев
Пользователь №: 41 215



Скажите, а как можно переписать покрасивше вот это:
Код
if ( b )  size_src = strlen( b ); else return;


В Libc вместо char используют Wchar. Приблизительно я понимаю о чем речь, но вот конкретно для данной задачи оно нужно?
Спасбио!

Цитата(demiurg_spb @ Mar 28 2013, 08:19) *
А чего её обдумывать?
Посмотрите реализацию memmove. В ней всё уже обдумано: если нет перекрытия то вызывается memcpy. Оптимальнее вряд ли напишете.
Я тоже отправил свой вариант в день размещения этой темы, но никакого ответа пока так и не получил. Завтра могу показать.



Вот такая реализация мне доступна. Если я не ошибаюсь, здесь несколько упрощена проверка перекрытия.
Код
/*
* Copyright (C) 2002     Manuel Novoa III
* Copyright (C) 2000-2005 Erik Andersen <andersen@uclibc.org>
*
* Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
*/

#include "_string.h"

#ifdef WANT_WIDE
# define Wmemmove wmemmove
#else
# define Wmemmove memmove
#endif

Wvoid *Wmemmove(Wvoid *s1, const Wvoid *s2, size_t n)
{
    register Wchar *s = (Wchar *) s1;
    register const Wchar *p = (const Wchar *) s2;

    if (p >= s) {
        while (n) {
            *s++ = *p++;
            --n;
        }
    } else {
        while (n) {
            --n;
            s[n] = p[n];
        }
    }

    return s1;
}

#ifndef WANT_WIDE
libc_hidden_def(memmove)
#endif


--------------------
Брак - это такой вид отношений, в которых один всегда прав, - а другой - муж.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 28 2013, 06:40
Сообщение #79


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Код
char* p;
size_t n = (p)? strlen(p) : 0;


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Буратино
сообщение Mar 28 2013, 06:45
Сообщение #80


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 27-10-08
Из: Украина, Киев
Пользователь №: 41 215



Цитата(demiurg_spb @ Mar 28 2013, 09:40) *
Код
char* p;
size_t n = (p)? strlen(p) : 0;


Нет, в случае если указатель нулевой то выход из функции осуществить! Зачем ноль присваивать если это уже не имеет смысла в нашем контексте например!?

А зачем Вы используетет size_t, чем например int не подходит? (я понимаю, что это связано с важными моментами, но не ясно с какими)


--------------------
Брак - это такой вид отношений, в которых один всегда прав, - а другой - муж.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 28 2013, 06:48
Сообщение #81


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Буратино @ Mar 28 2013, 10:45) *
А можно и не делать выход а дальше выполнять алгоритм со значением 0...
Всё от задачи зависит.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
igorle
сообщение Mar 28 2013, 06:53
Сообщение #82


Местный
***

Группа: Свой
Сообщений: 338
Регистрация: 14-07-12
Пользователь №: 72 753



Цитата(demiurg_spb @ Mar 28 2013, 09:23) *
Нет. Только код. А надо?

Нет, не надо.
Просто подумал, что если пришло письмо на русском, это могло их сбить с толку.
Я их буду трясти во вторник.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Mar 28 2013, 07:00
Сообщение #83


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(Буратино @ Mar 28 2013, 10:45) *
А зачем Вы используетет size_t, чем например int не подходит?

Самодокументирование кода.
Тем что int знаковый.
sizeof() возвращает size_t.
+
Посмотрите как написана libc.
Например посмотрите прототип memcpy. Видите какой тип у третьего аргумента?
Или что возвращает strlen. Ну и т.д. и т.п.
Вообщем если измеряется кол-во или размер самое место для size_t.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Буратино
сообщение Mar 28 2013, 07:11
Сообщение #84


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 27-10-08
Из: Украина, Киев
Пользователь №: 41 215



Да, нужно почитать что-то на эту тему. Спс.


--------------------
Брак - это такой вид отношений, в которых один всегда прав, - а другой - муж.
Go to the top of the page
 
+Quote Post
ar__systems
сообщение Mar 28 2013, 12:54
Сообщение #85


self made
****

Группа: Свой
Сообщений: 855
Регистрация: 7-03-09
Из: Toronto, Canada
Пользователь №: 45 795



Цитата(Буратино @ Mar 28 2013, 01:40) *
Скажите, а как можно переписать покрасивше вот это:
Код
if ( b )  size_src = strlen( b ); else return;


Код
if ( !b )  return;
size_src = strlen( b );

Go to the top of the page
 
+Quote Post
igorle
сообщение Apr 2 2013, 16:08
Сообщение #86


Местный
***

Группа: Свой
Сообщений: 338
Регистрация: 14-07-12
Пользователь №: 72 753



Цитата(demiurg_spb @ Mar 28 2013, 09:05) *
Отправлял и с
demiurg_spb @ _ _ _.ru
и с
___ @ kipspb.ru

Посмотрели. Говорят, что с @kipspb.ru был один участник. Давно. Ответили ему в тот же день.
От demiurg_spb получили письмо только 28 марта. Были праздники, но скоро ответят (может быть уже ответили)
Очень удивлялись, что люди обсуждают на форуме и выкладывают решения конкурсных задач. Считают что это нелогичным. тем более, что конкурс продолжается.
Go to the top of the page
 
+Quote Post
Буратино
сообщение Apr 2 2013, 17:55
Сообщение #87


Профессионал
*****

Группа: Свой
Сообщений: 1 433
Регистрация: 27-10-08
Из: Украина, Киев
Пользователь №: 41 215



Цитата(igorle @ Apr 2 2013, 19:08) *
Посмотрели. Говорят, что с @kipspb.ru был один участник. Давно. Ответили ему в тот же день.
От demiurg_spb получили письмо только 28 марта. Были праздники, но скоро ответят (может быть уже ответили)
Очень удивлялись, что люди обсуждают на форуме и выкладывают решения конкурсных задач. Считают что это нелогичным. тем более, что конкурс продолжается.


Как так продолжается? А когда заканчивается?


--------------------
Брак - это такой вид отношений, в которых один всегда прав, - а другой - муж.
Go to the top of the page
 
+Quote Post
igorle
сообщение Apr 2 2013, 19:33
Сообщение #88


Местный
***

Группа: Свой
Сообщений: 338
Регистрация: 14-07-12
Пользователь №: 72 753



Цитата(Буратино @ Apr 2 2013, 20:55) *
Как так продолжается? А когда заканчивается?

Они этот процесс уже год как ведут. Можете посмотреть список "победителей". Там есть даты. Я не знаю, зачем он конечную дату публикуют, а потом корректируют. Хозяин - барин.
Ну и, как помните, конкурс индивидуальный, а не коллективный. Так что лучше свои решения не публиковать.

Сообщение отредактировал igorle - Apr 2 2013, 19:35
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Apr 3 2013, 05:16
Сообщение #89


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(igorle @ Apr 2 2013, 20:08) *
Посмотрели. Говорят, что с @kipspb.ru был один участник. Давно. Ответили ему в тот же день.
Ничего не получил.
Цитата
От demiurg_spb получили письмо только 28 марта. Были праздники, но скоро ответят (может быть уже ответили)
Вчера прислали оповещение, что получили моё решение и извинились за задержку. Но пока никаких результатов и комментариев...

Цитата(igorle @ Apr 2 2013, 23:33) *
Так что лучше свои решения не публиковать.
ок.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Apr 5 2013, 05:20
Сообщение #90


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Получил таки ответ от них:
Цитата
Thanks for taking the Hola Challenge! Our engineer has reviewed your solution, and I'd like to speak with you about the results. Please call me at ...

Хотелось бы спросить... C ними только на английском изъясняться можно или они и по-русски разумеют?


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post

7 страниц V  « < 4 5 6 7 >
Reply to this topicStart new topic
5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 22:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01499 секунд с 7
ELECTRONIX ©2004-2016