Перейти к публикации
  • Сейчас на странице   Всего пользователей: 3   (0 пользователей, 3 гостя)

Rooster

Программирование[10]

Перепись  

313 пользователей проголосовало

У вас нет прав на голосование в этом опросе, или на просмотр результатов опроса. Пожалуйста, войдите или зарегистрируйтесь для голосования в опросе.

Рекомендованные сообщения

besteady написал 11 минут назад:

ага пару тактов

Ага

Натащил 3рдпати имплементаций, за оптимизировал все в край короче. Теперь хэш в 10 раз быстрее! Супер стд пеир! Еще стринг короче за оптимизирован как полухин сказал.

Нука, сколько там ускорение? Ух наверное в десяток раз то быстрее стали работать! Всмысле 3 процента? Но у меня же быстрый анордеред мап...Как это верстать назад ибо никто в хуй не уперлось это поддерживать? Я же все как сказал гугл сделал...

 

То что дозволено юпитеру гуглу не дозволено обычным компаниям. Такие как гугл, как фб, и прочие яндексы, могут позволить себе хоть всю СТД библиотеку переписать (что и делают по сути). У них есть на это силы, и у них есть возможность жить в своей экосистеме. И у них есть для этого смысл, ведь даже пара процентов производительности со всех железок гугла дадут ощутимый плюс к прибыли. А в обычном опенсорсе и не таких здоровых компаниях, это нахуй не уперлось, знать десятки импелментаций ради...Ради чего? Ради мысленной радости что у тебя мапа быстрее?

Или думаешь если ваш продукт будет пусть на 10% быстрее, это что-то даст? Не, не даст, потому что в небольших компаниях цена человеко-часов сопоставима с ценой железок. И время на внедрение новой имплементации может быть потрачено на оптимизацию на более высоком уровне абстракции. 

JuJeu и Kant понравилось это

ward написал 04.01.2022 в 02:54:

Hades для стада долбоебичей которые прокликивали Дэш и думали ебать они в артхаузнвй рогалик играют, не такие как все.

mazt3r написал 20.09.2019 в 11:27:

ласт оф ас - хуета для лисят и прочих мальчиков с вагиной между ног.

 

Поделиться сообщением


Ссылка на сообщение

стд регекс это вообще кек

image.png.75ce7bc3637f622d4eaa89feade0d81f.png

GoldRobot написал 2 минуты назад:
besteady написал 23 минуты назад:

ага пару тактов

Ага

Натащил 3рдпати имплементаций, за оптимизировал все в край короче. Теперь хэш в 10 раз быстрее! Супер стд пеир! Еще стринг короче за оптимизирован как полухин сказал.

Нука, сколько там ускорение? Ух наверное в десяток раз то быстрее стали работать! Всмысле 3 процента? Но у меня же быстрый анордеред мап...Как это верстать назад ибо никто в хуй не уперлось это поддерживать? Я же все как сказал гугл сделал...

 

То что дозволено юпитеру гуглу не дозволено обычным компаниям. Такие как гугл, как фб, и прочие яндексы, могут позволить себе хоть всю СТД библиотеку переписать (что и делают по сути). У них есть на это силы, и у них есть возможность жить в своей экосистеме. И у них есть для этого смысл, ведь даже пара процентов производительности со всех железок гугла дадут ощутимый плюс к прибыли. А в обычном опенсорсе и не таких здоровых компаниях, это нахуй не уперлось, знать десятки импелментаций ради...Ради чего? Ради мысленной радости что у тебя мапа быстрее?

Или думаешь если ваш продукт будет пусть на 10% быстрее, это что-то даст? Не, не даст, потому что в небольших компаниях цена человеко-часов сопоставима с ценой железок. И время на внедрение новой имплементации может быть потрачено на оптимизацию на более высоком уровне абстракции. 

очевидно, что ты заменяешь по мере необходимости

у нас в проекте изначально везде стд был. Потом дали кому-то таску написать свою имплементацию стринга. Для других людей ничего не изменилось, пользуешься так же как и стд


 

9Aa4jVY.jpeg

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
GoldRobot написал 3 минуты назад:
besteady написал 24 минуты назад:

ага пару тактов

Ага

Натащил 3рдпати имплементаций, за оптимизировал все в край короче. Теперь хэш в 10 раз быстрее! Супер стд пеир! Еще стринг короче за оптимизирован как полухин сказал.

Нука, сколько там ускорение? Ух наверное в десяток раз то быстрее стали работать! Всмысле 3 процента? Но у меня же быстрый анордеред мап...Как это верстать назад ибо никто в хуй не уперлось это поддерживать? Я же все как сказал гугл сделал...

 

То что дозволено юпитеру гуглу не дозволено обычным компаниям. Такие как гугл, как фб, и прочие яндексы, могут позволить себе хоть всю СТД библиотеку переписать (что и делают по сути). У них есть на это силы, и у них есть возможность жить в своей экосистеме. И у них есть для этого смысл, ведь даже пара процентов производительности со всех железок гугла дадут ощутимый плюс к прибыли. А в обычном опенсорсе и не таких здоровых компаниях, это нахуй не уперлось, знать десятки импелментаций ради...Ради чего? Ради мысленной радости что у тебя мапа быстрее?

Или думаешь если ваш продукт будет пусть на 10% быстрее, это что-то даст? Не, не даст, потому что в небольших компаниях цена человеко-часов сопоставима с ценой железок. И время на внедрение новой имплементации может быть потрачено на оптимизацию на более высоком уровне абстракции. 

Эмм, если ты используешь хэшмэп для чего-то, то явно хочешь, чтобы оно работало гораздо быстрее мэпа на чтение. Но на деле std::unordered_map не дает и двукратного прироста на миллионе элементов, что откровенно говоря хуево для контейнера с константным временем доступа. 

Поделиться сообщением


Ссылка на сообщение
GoldRobot написал 5 часов назад:
moonfangtopich написал 5 часов назад:
GoldRobot написал 6 часов назад:

Лучше скажите, как в питоме сорту отдать КОМПАРАТОР именно в сорт.

 

Цитата

In Py3.0, the cmp parameter was removed entirely (as part of a larger effort to simplify and unify the language, eliminating the conflict between rich comparisons and the __cmp__() magic method).

 

Гениально нахуй, просто гениально. :onneponimaet:

покажи зачем тебе

 

наверняка можно обойтись простейшей лямбой, переданной в key

 

если ты всё-таки настаиваешь на компараторе, то оберни его в functools.cmp_to_key и передай опять же как key

Да раскопал уже, ага, спасибо.

 

А по задачи, лист из имен файликов которые содержат дату, и нужно эти файлики сортануть по дате с учетом того что с одинаковой датой нужно обратить внимание на конкретно имя файла (не порядок по алфавиту, а типа "Прием_2021" должнен быть раньше обработан чем "Уход_2021").

 

Можно конечно из имен файлов составить типа ключ составной где вначале дата, потом какой-то индекс типа файла. Но бля, чето я не привык к такому.

у вас там в этом вашем питоне ебучем есть таплы? мапишь в 1 элемент тапла дату, во вторую приоритет типа файла - "уход/прием/хуй/пизда". приоритет это типа 

fileName match {

  case "Прием_.*" => 0

  case "Уход_.*" => 1

}

у тебя каждому имени файла соответствует тапл типа <год, приоритет> (напрмер <2020, 0>) и уже сортируешь элементы по этим таплам стандартными средствами.

moonfangtopich написал 5 часов назад:
GoldRobot написал 5 часов назад:
moonfangtopich написал 5 часов назад:
GoldRobot написал 6 часов назад:

Лучше скажите, как в питоме сорту отдать КОМПАРАТОР именно в сорт.

 

Цитата

In Py3.0, the cmp parameter was removed entirely (as part of a larger effort to simplify and unify the language, eliminating the conflict between rich comparisons and the __cmp__() magic method).

 

Гениально нахуй, просто гениально. :onneponimaet:

покажи зачем тебе

 

наверняка можно обойтись простейшей лямбой, переданной в key

 

если ты всё-таки настаиваешь на компараторе, то оберни его в functools.cmp_to_key и передай опять же как key

Да раскопал уже, ага, спасибо.

 

А по задачи, лист из имен файликов которые содержат дату, и нужно эти файлики сортануть по дате с учетом того что с одинаковой датой нужно обратить внимание на конкретно имя файла (не порядок по алфавиту, а типа "Прием_2021" должнен быть раньше обработан чем "Уход_2021").

 

Можно конечно из имен файлов составить типа ключ составной где вначале дата, потом какой-то индекс типа файла. Но бля, чето я не привык к такому.


from datetime import datetime


FILENAMES = [
    'priem_31.12.2020.txt',
    'uhod_21.02.2012.txt',
    'uhod_18.05.2007.txt',
    'priem_18.05.2007.txt',
]


def extract_date(filename: str) -> datetime:
    d = filename.split('_')[-1]
    d = '.'.join(d.split('.')[:-1])
    return datetime.strptime(d, '%d.%m.%Y')


sorted(FILENAMES, key=lambda f: (extract_date(f), f))
# ............................................... ^ второй элемент для сравнения в кортеже
# ...............................................   оставляем нетронутым, потому что "приём" по алфавиту и так идёт раньше "ухода"

результат:

image.png.acc9f8159c684fd6a947736c31c9f4ca.png

--------------

если алфавитный порядок в качестве второстепенного не подходит, то второй элемент в кортеже точно так же можно обернуть в функцию, которая например строки на "залупа..." маппит в 0, а строки на "абоба..." в 1

во я вот это имел ввиду, в скале то же самое. делов примерно на 2 минуты


 

очень крутые котейки

RqvSzvr.png


Кому-то пизды дал - нужно сделать скрин обязательно. (с) Solo

Поделиться сообщением


Ссылка на сообщение

Бро, все что ты написал, есть в последней строчке моей квоты.

Но спасибо за помощь конечно <3


ward написал 04.01.2022 в 02:54:

Hades для стада долбоебичей которые прокликивали Дэш и думали ебать они в артхаузнвй рогалик играют, не такие как все.

mazt3r написал 20.09.2019 в 11:27:

ласт оф ас - хуета для лисят и прочих мальчиков с вагиной между ног.

 

Поделиться сообщением


Ссылка на сообщение

Блять кем нужно быть что бы любить это дрочиво над тактами?

Поделиться сообщением


Ссылка на сообщение
FeelYourDestiny said 24 minutes ago:

Блять кем нужно быть что бы любить это дрочиво над тактами?

@E1azor

E1azor понравилось это

Saying that Java is nice because it works on all OS's is like saying that anal sex is nice because it works on all genders.
 

Поделиться сообщением


Ссылка на сообщение

после моего наезда мне написали "мы не даём полную обратную связь, т.к. нам похуй, т.к. кандидаты могут придти вновь делать тоже самое задание" видимо кандидат сам догадается, где он обосрался. но продолжил, видимо дошёл до той тимы, где ответили, что сложность квадратичная (выше требуемой), плюс "не понравились действия с буфером при работе с файлами". тут подозреваю, что не понравилось то, что файл вычитал полностью сразу в буфер (мол "если бы" я грузил бы гигабайты, то такой подход, конечно, не был бы подходящим), ну и как отметили в теме, что буфер я использовал, не тронув size у строки, что может быть оценено хуевато.

 

ну в целом, расцениваю опыт положительно. во-первых, благодаря топану, правильное решение плюс минус понятно. плюс то, что указатели на старую память могут всё ещё связывать данные, будучи записанными в файл - это прямо открытие для меня. никак не рассматривал запись, т.к. считал полностью их бесполезными для решения. ну и офк, теперь если буду получать тестовые, то если они требуют больше нескольких часов времени = то нахуй их и всё, проще это время потратить на собес в другую контору.

Поделиться сообщением


Ссылка на сообщение
Гость NeGa132

2124767028_.png.2aca2e14d83ee4e98d3e2521ee77575d.png

Поделиться сообщением


Ссылка на сообщение
Olololnet написал 1 час назад:

после моего наезда мне написали "мы не даём полную обратную связь, т.к. нам похуй, т.к. кандидаты могут придти вновь делать тоже самое задание" видимо кандидат сам догадается, где он обосрался. но продолжил, видимо дошёл до той тимы, где ответили, что сложность квадратичная (выше требуемой), плюс "не понравились действия с буфером при работе с файлами". тут подозреваю, что не понравилось то, что файл вычитал полностью сразу в буфер (мол "если бы" я грузил бы гигабайты, то такой подход, конечно, не был бы подходящим), ну и как отметили в теме, что буфер я использовал, не тронув size у строки, что может быть оценено хуевато.

 

ну в целом, расцениваю опыт положительно. во-первых, благодаря топану, правильное решение плюс минус понятно. плюс то, что указатели на старую память могут всё ещё связывать данные, будучи записанными в файл - это прямо открытие для меня. никак не рассматривал запись, т.к. считал полностью их бесполезными для решения. ну и офк, теперь если буду получать тестовые, то если они требуют больше нескольких часов времени = то нахуй их и всё, проще это время потратить на собес в другую контору.

image.png.fa7ad7aedb26246d43acdd4e451089c1.png

Нахуя так писать и почему бы не сдвигать вправо само iValue


 

9Aa4jVY.jpeg

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение
besteady написал 5 минут назад:

Нахуя так писать и почему бы не сдвигать вправо само iValue

если я не ошибаюсь, операция сдвига для отрицательного числа потенциально может потерять бит знака или вести себя неопределённо для этого кейса.  именно поэтому отдельно проверяется на отрицательное значение и поэтому же не двигается значение.

UglyBastard понравилось это

Поделиться сообщением


Ссылка на сообщение
besteady написал 25 минут назад:
Olololnet написал 2 часа назад:

после моего наезда мне написали "мы не даём полную обратную связь, т.к. нам похуй, т.к. кандидаты могут придти вновь делать тоже самое задание" видимо кандидат сам догадается, где он обосрался. но продолжил, видимо дошёл до той тимы, где ответили, что сложность квадратичная (выше требуемой), плюс "не понравились действия с буфером при работе с файлами". тут подозреваю, что не понравилось то, что файл вычитал полностью сразу в буфер (мол "если бы" я грузил бы гигабайты, то такой подход, конечно, не был бы подходящим), ну и как отметили в теме, что буфер я использовал, не тронув size у строки, что может быть оценено хуевато.

 

ну в целом, расцениваю опыт положительно. во-первых, благодаря топану, правильное решение плюс минус понятно. плюс то, что указатели на старую память могут всё ещё связывать данные, будучи записанными в файл - это прямо открытие для меня. никак не рассматривал запись, т.к. считал полностью их бесполезными для решения. ну и офк, теперь если буду получать тестовые, то если они требуют больше нескольких часов времени = то нахуй их и всё, проще это время потратить на собес в другую контору.

image.png.fa7ad7aedb26246d43acdd4e451089c1.png

Нахуя так писать и почему бы не сдвигать вправо само iValue

std::endl:fffuuu:

Поделиться сообщением


Ссылка на сообщение
Olololnet написал 39 минут назад:
besteady написал 47 минут назад:

Нахуя так писать и почему бы не сдвигать вправо само iValue

если я не ошибаюсь, операция сдвига для отрицательного числа потенциально может потерять бит знака или вести себя неопределённо для этого кейса.  именно поэтому отдельно проверяется на отрицательное значение и поэтому же не двигается значение.

да рили там по стандарту не сказано должен ли оставаться бит знак


 

9Aa4jVY.jpeg

IFVau8G.png

AohP0ps.png

Поделиться сообщением


Ссылка на сообщение

Не знал, что отрицательные значения сдвигать нельзя. Но все равно непонятно зачем эта строчка кода. Наличие отрицательного значения все равно проверяется с помощью проверки 1 в старшем разряде. То есть через (iMaxValueBit & iValue) все равно проверяется.

Поделиться сообщением


Ссылка на сообщение
Grohuf написал 20 минут назад:

Не знал, что отрицательные значения сдвигать нельзя. Но все равно непонятно зачем эта строчка кода. Наличие отрицательного значения все равно проверяется с помощью проверки 1 в старшем разряде. То есть через (iMaxValueBit & iValue) все равно проверяется.

проверить то проверишь, но

 

while (iMaxValueBit)
{

    iMaxValueBit >>= 1;
}

 

при отрицательном инте не выйдет из цикла

Grohuf написал 54 минуты назад:

std::endl:fffuuu:

?

Поделиться сообщением


Ссылка на сообщение
Olololnet написал 2 минуты назад:

проверить то проверишь, но

 

while (iMaxValueBit)
{

    iMaxValueBit >>= 1;
}

 

при отрицательном инте не выйдет из цикла

Почему не выйдешь? У тебя просто единица стоит не на 31 бите, а на 32. Непонятно, зачем ты сделал отдельную строчку для проверки бита отрицательного значения, если этот бит может проверить цикл и вывести точно также, как и остальные биты

Olololnet написал 3 минуты назад:

?

endl флашит данные. Я бы поберегся использовать его на собеседованиях, чтобы чего нехорошего не подумали.

Поделиться сообщением


Ссылка на сообщение
Grohuf написал 14 минут назад:

Почему не выйдешь? У тебя просто единица стоит не на 31 бите, а на 32. Непонятно, зачем ты сделал отдельную строчку для проверки бита отрицательного значения, если этот бит может проверить цикл и вывести точно также, как и остальные биты

 

Olololnet написал 18 минут назад:

проверить то проверишь, но

 

while (iMaxValueBit)
{

    iMaxValueBit >>= 1;
}

 

при отрицательном инте не выйдет из цикла

запусти код, у меня на gcc из цикла не выходит

Поделиться сообщением


Ссылка на сообщение

А, понял, потому что у тебя тип не unsigned

Поделиться сообщением


Ссылка на сообщение
Grohuf написал 7 минут назад:

А, понял, потому что у тебя тип не unsigned

да, емнип есть шаблон из стл, который превращает тип инт разных размеров в такие же но unsigned. тогда можно было бы сделать так, как ты пишешь. но там условие ностлсукаблят

Поделиться сообщением


Ссылка на сообщение
Olololnet написал 12.08.2021 в 19:16:

1. функция на вход принимает знаковое целое, печатает двоичное представление (без использования библиотек)

2. написать функцию, удаляющую последовательно дублирующиеся символы в строке (также без либ)

1+2 = две хуйни. разве что в первом непрозрачно намекают на шаблонную функцию и что тип может быть максимально толстым и надо не продолбать, что бит единицы при помощи которой побитово надо проходить для long long надо ставить обязательно с кастованием. хз понятно ли в чём прикол

3. сделать сериализацию/десериализацию двусвязного списка в бинарном формате в файл. алгоритмическая сложность меньше квадратичной. и далее приведён код - что есть в ноде и хедер с методами сериализации/десереализации. значимый нюанс в том, что там не просто двусвязный список, внутри каждого элемента есть ещё 1 указатель, который ссылается на любой элемент в этом же списке или на nullptr. т.е. связаны они не только порядком, но и этим указателем. в условиях ограничения сложности выполнения, призадумался я крепко.

 

Olololnet написал 12.08.2021 в 19:57:

 

с двоичным представлением ещё могу понять, каждый мог обосраться, но 3-ю за квадрат делать :fie:

 

и тесты вручную делал с ndNode5 вообще :omegalul:


:zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu:

:zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu:    всё что пишу -- шизофренический бред     :zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu:

:zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu::zatrolka_tupostu:

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...