Типовые задачи на собеседованиях по программированию с решениями
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 07.07.16 06:00
Оценка: :)
Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?
Желательно привести решения этих задач с комментариями или объяснениями. (Стандартный язык для ответов--C++, но можно использовать любой другой--Delphi, C#, Java и т.д.)
1613 г. = 2024 г.
Re: Типовые задачи на собеседованиях по программированию с решениями
От: Miroff Россия  
Дата: 07.07.16 06:07
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?

RF>Желательно привести решения этих задач с комментариями или объяснениями. (Стандартный язык для ответов--C++, но можно использовать любой другой--Delphi, C#, Java и т.д.)

FizBuzz
Re[2]: Типовые задачи на собеседованиях по программированию
От: Arsen.Shnurkov  
Дата: 07.07.16 06:28
Оценка:
M> FizBuzz

хотел бы я посмотреть на решение этой задачи средствами GNU make (т.е. только мейк-файлом без GMSL и внешних вызовов)

У меня нет сомнений, что сделать это возможно (там же есть циклы, условия и $(word N))

У меня есть сомнения, что предложивший написать такого рода код, сможет сам написать сходу.
Отредактировано 07.07.2016 6:32 Arsen.Shnurkov . Предыдущая версия .
Re[2]: Типовые задачи на собеседованиях по программированию с решениями
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 07.07.16 06:57
Оценка: :))) :)
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, RussianFellow, Вы писали:


RF>>Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?

RF>>Желательно привести решения этих задач с комментариями или объяснениями. (Стандартный язык для ответов--C++, но можно использовать любой другой--Delphi, C#, Java и т.д.)

M>FizBuzz


"Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”."


Код на C++ :

#include <stdio.h>

for (int i=0; i<=100; i++)
{
    if (i==((i/15)*15))
    {
        printf("FizzBuzz\n");
    }
    else
    {
        if (i==((i/3)*3))
        {
            printf("Fizz\n");
        }
        else if (i==((i/5)*5))
        {
           printf("Buzz\n");
        }
        else
        {
            printf("%d\n",i);
        }
    }
}


Так, что ли?
1613 г. = 2024 г.
Re[3]: Типовые задачи на собеседованиях по программированию с решениями
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 07.07.16 07:00
Оценка:
Прошу прощения--числа от 1 до 100:

RF>
#include <stdio.h>

for (int i=1; i<=100; i++)
{
    if (i==((i/15)*15))
    {
        printf("FizzBuzz\n");
    }
    else
    {
        if (i==((i/3)*3))
        {
           printf("Fizz\n");
        }
        else if (i==((i/5)*5))
        {
           printf("Buzz\n");
        }
        else
        {
           printf("%d\n",i);
        }
    }
}
1613 г. = 2024 г.
Re[4]: Типовые задачи на собеседованиях по программированию с решениями
От: alzt  
Дата: 07.07.16 07:33
Оценка: +3
Здравствуйте, RussianFellow, Вы писали:

Я бы переписал сл. образом.

#include <stdio.h>

for (int i=1; i<=100; i++)
{
    bool mul3 = (i%3)==0;
    bool mul5 = (i%5)==0;

    if(mul3 && mul5) printf("FizzBuzz\n");
    else if(mul3) printf("Fizz\n");
    else if(mul5) printf("Buzz\n");
    else printf("%d\n",i);
}
Re[2]: Типовые задачи на собеседованиях по программированию с решениями
От: RussianFellow Россия http://russianfellow.livejournal.com
Дата: 07.07.16 07:57
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, RussianFellow, Вы писали:


RF>>Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?

RF>>Желательно привести решения этих задач с комментариями или объяснениями. (Стандартный язык для ответов--C++, но можно использовать любой другой--Delphi, C#, Java и т.д.)

M>FizBuzz


Ясно.

А как с задачами создания стека, очереди, дека без использования STL, MFC и других библиотек?
А как с задачей создания и обхода бинарного дерева?
А как с задачами работы со списком--разворот, сортировка?
1613 г. = 2024 г.
Re: Типовые задачи на собеседованиях по программированию с решениями
От: 4Real Швеция  
Дата: 07.07.16 08:11
Оценка: +1 -1
Здравствуйте, RussianFellow, Вы писали:

hackerrank — там не дают примеров решения сразу, но дают достаточно информации чтоб добраться до ответа самостоятельно. После того как твое решение проходит нужные тесты можешь смотреть как эту задачу решают другие. В общем полезный ресурс, сам на нем практикуюсь.
Re: Типовые задачи на собеседованиях по программированию с решениями
От: strcpy Россия  
Дата: 07.07.16 16:20
Оценка:
Здравствуйте, RussianFellow, Вы писали:

RF>Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?

RF>Желательно привести решения этих задач с комментариями или объяснениями. (Стандартный язык для ответов--C++, но можно использовать любой другой--Delphi, C#, Java и т.д.)
https://leetcode.com/
Удвой число ошибок, если не получается добиться цели.
Re: Типовые задачи на собеседованиях по программированию с решениями
От: nekocoder США  
Дата: 07.07.16 16:28
Оценка: +3 -1
Здравствуйте, RussianFellow, Вы писали:

RF>Коллеги, не могли бы вы подсказать, какие бывают типовые задачи на собеседованиях по программированию?


Есть посвященная как раз этому книга Cracking the Coding Interview.
Re[3]: Типовые задачи на собеседованиях по программированию с решениями
От: b0r3d0m  
Дата: 07.07.16 17:50
Оценка: -2 :)
RF>Код на C++ :

RF>
RF>#include <stdio.h>

RF>for (int i=0; i<=100; i++)
RF>{
RF>    if (i==((i/15)*15))
RF>    {
RF>        printf("FizzBuzz\n");
RF>    }
RF>    else
RF>    {
RF>        if (i==((i/3)*3))
RF>        {
RF>            printf("Fizz\n");
RF>        }
RF>        else if (i==((i/5)*5))
RF>        {
RF>           printf("Buzz\n");
RF>        }
RF>        else
RF>        {
RF>            printf("%d\n",i);
RF>        }
RF>    }
RF>}
RF>


RF>Так, что ли?


Какой же ужас.

Даже если не брать в расчёт наличие в языке встроенного operator%, вы напрочь забыли о том, что 3/3*3 вовсе не обязательно равняется 3.
Re[4]: Типовые задачи на собеседованиях по программированию с решениями
От: nigh  
Дата: 07.07.16 21:00
Оценка:
Здравствуйте, b0r3d0m, Вы писали:

B>вы напрочь забыли о том, что 3/3*3 вовсе не обязательно равняется 3.

забывать там нечего. Деление целых чисел в C — всегда целочисленное
Re[5]: Типовые задачи на собеседованиях по программированию с решениями
От: b0r3d0m  
Дата: 07.07.16 21:02
Оценка:
B>>вы напрочь забыли о том, что 3/3*3 вовсе не обязательно равняется 3.
N>забывать там нечего. Деление целых чисел в C — всегда целочисленное
Тем более.
Re[6]: Типовые задачи на собеседованиях по программированию с решениями
От: nigh  
Дата: 07.07.16 21:08
Оценка:
Здравствуйте, b0r3d0m, Вы писали:

B>>>вы напрочь забыли о том, что 3/3*3 вовсе не обязательно равняется 3.

N>>забывать там нечего. Деление целых чисел в C — всегда целочисленное
B>Тем более.
поясните? для целей это задачи указанный способ подходит. (хотя, % конечно лучше и быстрее)
Re[7]: Типовые задачи на собеседованиях по программированию с решениями
От: b0r3d0m  
Дата: 07.07.16 21:12
Оценка:
N>поясните? для целей это задачи указанный способ подходит. (хотя, % конечно лучше и быстрее)
Лол. Что ж, это я задание неправильно прочитал, извиняюсь. Про operator% всё ещё актуально, а остальное нафиг.
Re[2]: Типовые задачи на собеседованиях по программированию с решениями
От: De-Bill  
Дата: 08.07.16 03:05
Оценка:
M>FizBuzz
for i in range(1,101):print("Fizz"*(i%3==0)+"Buzz"*(i%5==0)+str(i)*(i%3!=0!=i%5))
Re[3]: Типовые задачи на собеседованиях по программированию с решениями
От: De-Bill  
Дата: 08.07.16 03:23
Оценка:
DB>
DB>for i in range(1,101):print("Fizz"*(i%3==0)+"Buzz"*(i%5==0)+str(i)*(i%3!=0!=i%5))
DB>

Или даже так
for i in range(100):print("Fizz"*(i%3==2)+"Buzz"*(i%5==4) or str(i+1))
Re[4]: Типовые задачи на собеседованиях по программированию с решениями
От: Miroff Россия  
Дата: 08.07.16 04:36
Оценка:
Здравствуйте, De-Bill, Вы писали:

DB>
for i in range(100):print("Fizz"*(i%3==2)+"Buzz"*(i%5==4) or str(i+1))


PEP8 соблюдать необязательно?
Re[5]: Типовые задачи на собеседованиях по программированию с решениями
От: De-Bill  
Дата: 08.07.16 06:14
Оценка:
DB>>
for i in range(100):print("Fizz"*(i%3==2)+"Buzz"*(i%5==4) or str(i+1))

M>PEP8 соблюдать необязательно?

Это же code golf. Вообще можно ничего не соблюдать. Лишь бы работало.
Re[2]: Типовые задачи на собеседованиях по программированию с решениями
От: cures Россия cures.narod.ru
Дата: 10.07.16 22:38
Оценка:
Здравствуйте, strcpy, Вы писали:

S> le****de.com


Они там больные, требовать за доступ к задачам 25 баксов в месяц, когда есть десятки сайтов с тысячами таких же и гораздо лучших задач даром?
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.