• Как программно подсчитать въехавшие и выехавшие авто?

    gbg
    @gbg Куратор тега Программирование
    Любые ответы на любые вопросы
    OpenCV здесь не очень нужен, это как из пушки по воробьям. Достаточно двух фотобарьеров на въезде (ну или двух камер, если так хочется).

    Если проехал первый барьер, потом второй - +1
    Если проехал второй барьер, потом первый - -1
    Ответ написан
    2 комментария
  • Первый рабочий день программист. С чего начать?

    mak-oleg
    @mak-oleg
    I believe in god, for the rest i pay in cash!
    1. Придти на рабочее место.
    2. Принести с собой настоящую кружку программиста, объемом не менее 0,5 литра
    3. Наполнить ее крепким кофе
    4. Выйти в сеть интернет
    5. Поделится на форумах программистов в какую ж..... вы попали и что вам с этим делать, и ваш призыв не останется без ответа и поддержки
    Ответ написан
    Комментировать
  • Как работает веб сервер?

    Lerg
    @Lerg
    Defold, Corona, Lua, GameDev
    По TCP приходит сигнал в сетевую карту, та вычленяет из него пакет и перенаправляет в ядро ОС, ядро уже смотрит какому приложению отдать этот пакет. Находит Apache и передаёт ему, тот парсит пакет, выделяет запрос, парсит запрос и дальше по программе.
    Ответ написан
    3 комментария
  • Что вы думаете про единый UI приложения, независимый от платформы OS?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Интерфейс должен быть заточен под общий принцип поведения пользователей и элементов GUI в данной OS (чтобы не "перегружать" мозг пользователя новой информацией в плане эргономики)
    Ответ написан
    3 комментария
  • Зачем люди просят забивать личные сообщения Вконтакте?

    Nexen2
    @Nexen2
    Web backend Yii2/Symfony Coder
    Представьте себе задачу - написать сеть ботов, имитирующих виртуальных людей с набором связей с друг другом, включая родственные и рабочие, общающиеся с дург другом, меняющие аватарки, статусы, пишущие иногда всякую мудрую пургу, цитирующих популярные паблики. Потом раз и выкладывающих ссылку на рекламируемый сайт. 2 недели прошло, еще ссылка.

    Вы не поверите, но строительство такой сети эдак на 20к ботов стоит порядочных денег. И есть тьма "уважаемых" предприятий, готовых платить за такую раскрутку ссылками. Эта задача была одной из причин (но не единственная) почему я уволился. Меня бесят пишущие мне боты, и я не собирался делать сеть из новых двадцати тысяч. Спрашиваете зачем вас просят что-то им написать или подружится с ними? Если это незнакомая вам личность, на 1/2 шанс что это бот, и ему нужно переписываться с реальным человеком, чтобы его не забанили.
    Ответ написан
    Комментировать
  • Какую выбрать среду разработки под mac os ?

    evnuh
    @evnuh
    Поиск Гугл помог мне, впусти и ты его в свой дом
    Xcode. Какие именно библиотеки вам предлагают учебники, которых нет в llvm? И да, среда разработки != компилятор.
    Ответ написан
    Комментировать
  • Как найти все целые числа, которые при делении на 4 дают остаток 3, при делении на 3 дают остаток 2, при делении на 2 дают остаток 1?

    1 шаг) Переберите мысленно или на листочке все возможные остатки от деления на 12 и выберите среди них те, которые удовлетворяют Вашим условиям.
    2 шаг) Придумайте, как из выясненной закономерности найти все числа, которые Вам нужно.
    Ответ написан
    1 комментарий
  • Как сделать перебор всех возможных комбинаций из символов?

    Напрашивается вариант представить результирующие строки записями в N-ричной системе счисления, где заданные буквы есть цифры от 0 до N-1, тогда задача сводится к выводу однозначных чисел от 0 до N-1, двузначных от 0 до N²-1, трёхзначных от 0 до N³-1. Запись в N-ричной системе легко получить, используя остаток от деления и деление.

    #include <vector>
    
    std::string gen(std::vector<char> alphabet, std::size_t idx, std::size_t digits)
    {
    	std::string ret(digits, alphabet[0]);
    
    	std::size_t alphas = alphabet.size();
    	while (digits--)
    	{
    		ret[digits] = alphabet[idx % alphas];
    		idx /= alphas;
    	}
    	return ret;
    }
    
    void gen_and_out(std::size_t n, std::vector<char> alphabet)
    {
    	std::size_t numbers = 1;
    	std::size_t alphas = alphabet.size();
    	for (std::size_t i = 0; i < n; ++i)
    	{
    		numbers *= alphas; // на каждом шаге чисел в alphas раз больше
    		for (std::size_t cur = 0; cur < numbers; ++cur)
    		{
    			std::cout << gen(alphabet, cur, i + 1) << std::endl;
    		}
    	}
    }
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	gen_and_out(3, std::vector<char>({ 'a', 'b', 'c'}));
    }


    Второй вариант - это представить эти строки как запись числа в особой системе счисления без нуля - с цифрами от 1 до N. В этом случае легко преобразовать такую запись в число - ∑aᵢ×Nⁱ, а вот обратное преобразование должно учитывать, что у нас нет нуля, тогда если остаток получился равным нулю, цифру нужно взять N.
    В отличие от первого варианта, здесь нет отдельных циклов для однозначной, двузначной и трёхзначных записей, так как результаты идут подряд, за "c" следует "aa", за "cc" - "aaa", и так далее.

    #include <vector>
    
    std::string gen(std::vector<char> alphabet, std::size_t idx)
    {
    	std::vector<char> ret;
    
    	std::size_t alphas = alphabet.size();
    
    	while (idx)
    	{
    		std::size_t cur = idx % alphas;
    		if (!cur) // нет нуля
    			cur = alphas;
    		ret.push_back(alphabet[cur - 1]);
    		idx = (idx - cur) / alphas;
    	}
    
    	return std::string(ret.rbegin(), ret.rend());
    }
    
    void gen_and_out(std::size_t n, std::vector<char> alphabet)
    {
    	std::size_t numbers = 1;
    	std::size_t alphas = alphabet.size();
    	for (std::size_t i = 0; i < n; ++i)
    	{
    		numbers *= alphas;
    		numbers += 1;
    	}
    	for (std::size_t i = 1; i < numbers; ++i)
    		std::cout << gen(alphabet, i) << std::endl;
    }
    
    int _tmain(int argc, _TCHAR* argv[])
    {
    	gen_and_out(3, std::vector<char>({ 'a', 'b', 'c' }));
    }


    На закуску, как та же задача решается на Haskell:
    gen alphas n = concatMap (`replicateM` alphas) [1..n]
    main = mapM_ putStrLn $ gen "abc" 3
    Ответ написан
    Комментировать
  • Какие есть игры в Ubuntu похожее на Zuma?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Заходите на любой сайт с flash играми и играете.
    Ответ написан
    1 комментарий
  • Как открыть Карты из приложения iOS?

    smanioso
    @smanioso
    Отмечайте ответы на свои вопросы!
    Ответ написан
    Комментировать
  • Как правильно описывать API?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Очень хорошая документация у LinedIn. Это как пример оформления документации скорее.

    Так же почитайте что такое ресурс. что такое uri.... Большая часть правил по которым нужно формировать API строятся как раз на этих принципах.

    Если говорить о best practice, есть еще HATEOAS и Json Api. чем это все хорошо - позволяет автоматически генерировать клиентский код. Скажем помниться мне для angular.js есть модуль позволяющий легко и просто взаимодействовать с HATEOAS. Но если честно, я редко сталкивался с апишками где это используется. Сходу вспомню что Sun (oracle) использует в енто дело в своих апишках для работы с клаудами.
    Ответ написан
    1 комментарий
  • Каких типов жалоб не хватает на Тостере в вопросах, ответах и комментариях, а какие лишние?

    @inkvizitor68sl
    Linux-сисадмин с 8 летним стажем.
    "Автор получил ответ и скрылся в тумане, не поставив галки Решение"
    "Автору нужно на freelansim"
    "Автор просит сделать за него его работу, а если бы он бы хирургом?"
    "Кто пустил его сюда вообще?"

    А если серьёзно, то:
    "Вопрос является просьбой решить конкретную задачу" (или как то так, в смысле "сделайте за меня, я не хочу ничего делать")
    И "У меня другая жалоба, напишу в поле ниже"

    А вообще нужно бы придумать, как решить проблему с тем, что галка "решение" в некоторых случаях висит на "вредных" ответах, за которые на работе могут по лицу погладить.
    Ответ написан
    7 комментариев
  • Насколько реально программировать в Xcode используя виртуализацию Vmware Mac OS?

    kaspartus
    @kaspartus
    Два года назад имел такой опыт.

    Виртуалка крутилась на средненьком ноуте на работе и на средненьком стационарнике дома. Эффект был один: прогать можно, но все начинало тормозить рано или поздно. Все сильно упирается в оперативу, так что жалеть ее на виртуалку не стоит, но при этом даже 2Гб она съедает без проблем, после чего лучше начать вырубать приложения, а лучше просто перезапустить виртуалку.

    Скажу так: если это вам для работы, то смело просите мак. Mac mini стоит 20-40к, для компании это копейки, а для вас +100500 к производительности и столько же в минус к геморою и потере нервов. Если работодатель экономит на спичках, то его лучше поскорее сменить, никаких радужных перспектив от него ждать не стоит.

    Отдельным моментом можно сказать, что скоро выходит новая версия операционки и в отличае от предыдущих ее лучше будет поставить, чтобы попробовать фичи с интеграцией йоси и макоси.
    Ответ написан
    1 комментарий
  • Kак сортировать стрoку, которая содержит 0 и 1?

    @dvva Автор вопроса
    Start by having a counter that keeps track of how many adjacent 1's you have at the back of the string.
    Ie, 00110101111 => adjacent 1's = 4.

    Try to find a pair that is 11. Swap that in front of the adjacent 1's and increment the counter by 2.
    Ie, 100110101111 => 100100111111. Do this until there are non remaining.

    Try to find a pair that is 01. Swap that in front of the adjacent 1's and increment the counter by 1. If the 01 is one character away from the adjacent 1's, you'll need to swap it forwards first.
    Ie, 100010111111 => 101000111111 => 100001111111. Do this until there are non remaining.

    If the string starts with a 10, swap it backwards, and move the resulting 01 in front of the adjacent 1's and increment the counter by 1. Ie, 100001111111 => 001001111111 => 000011111111.

    This run's in O(n^2) operations average I beleive. I think there exists an algorithm that runs in O(n) operations however.
    Ответ написан
    1 комментарий
  • Каков план личностного развития C++ программиста с нуля?

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

    Для этого вам можно или найти какой-нибудь курс, или поучаствовать в opensource проекте с code review, причем довести свои патчи до merge в master. С этим, правда, бывают сложности, если вы совсем начинающий, потому что никому от вас толку не будет.
    Тут есть еще один вариант, про который почему-то никто никогда не упоминает. Отвечать на вопросы. Вот так вот как вы сейчас задаете вопросы, только отвечать. Конечно, вам не пойдет ванильный тостер без дизлайков, с малым количеством вопросов и специфическим русскоязычным сообществом. Вам нужно на StackOverflow. Просто смотреть подряд вопросы, пытаться решать, постить ответы, сравнивать с теми ответами, которые пишут другие люди и делать выводы. Если вы будете писать ерунду, вас там поправят, опять же. Я в свое время довольно много таким образом узнал где-то за полгода.
    Ответ написан
    1 комментарий
  • Можно ли работать программистом закончив бакалавриат Бизнес-информатики?

    @7rulnik
    Оффтоп
    А оно вам надо? Вам в лучшем случае дадут вводную инфу по каждому из языков. Лучше уделите время самообразованию. Если же высшее образование для вас принципиально, то идите туда, где будет легко учиться - сможете больше времени уделять тому, что вам действительно нравится и необходимо.
    Ответ написан
    Комментировать
  • Какие есть серьезные программы на С?

    @andreyqin
    Ядро Linux
    Ответ написан
    Комментировать
  • Kак сортировать стрoку, которая содержит 0 и 1?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Я, наверное, чего-то недопонял, но почему просто не подсчитать количество 1 и 0 в строке и не вывести потом сразу сначала все 0, а потом 1.
    Ответ написан
    1 комментарий