1 | |||||||||||||||||||||
Тестовое задание на Junior C++ dev26.07.2013, 18:40. Показов 60362. Ответов 65
Метки нет (Все метки)
Доброго времени суток.
Неделю назад ради интереса отправил свое резюме в одну компанию, куда требуются с++ юниоры. Получил от них тестовое задание. Я ожидал, что они мне откажут (опыта то у меня действительно мизер), но хотелось бы узнать у более опытных людей, какое решение задач "ожидает" компания от соискателя для продолжения с ним отношений. Далее идет 4 задачи и мой вариант решения каждой из них.
0
|
26.07.2013, 18:40 | |
Ответы с готовыми решениями:
65
Тестовое задание надолжность Junior C++ gamedev Тестовое задание Тестовое задание Тестовое задание от компании Exness |
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
|
26.07.2013, 18:55 | 2 |
В 4 задаче схитри. Просто посчитай сумму чисел с помощью формулы суммы арифметической прогрессии.
S = ( 2*a1 + (n - 1)*d ) / 2 * n. где a1 — первый член прогрессии, d — разность прогрессии, n — количество суммируемых членов. В твоём случае a1 = 1, d = 1, n = _count + 1; Теперь посчитай сумму элементов в данном массиве. Вычти эту сумму из суммы прогрессии. Разность будет недостающим числом.
0
|
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
|
26.07.2013, 19:01 | 4 |
Покажет, что ты умеешь мыслить нестандартно. Находить скрытые более легкие пути.
Это выделит тебя из толпы людей, которые решат её правильно, но обычным путём. На собеседовании важно не только правильно решить задачу, но и показать свою смекалку и находчивость.
0
|
26.07.2013, 19:08 [ТС] | 5 |
Ну так решение и построено почти по этому же принципу. Сумма всех элементов последовательности минус сумма элементов массива без последнего элемента. Только подсчет суммы последовательности ведется в том же цикле, что и сумма элементов массива.
0
|
328 / 327 / 92
Регистрация: 16.12.2012
Сообщений: 544
|
|
26.07.2013, 19:09 | 6 |
а сортировка зачем?
0
|
26.07.2013, 19:37 [ТС] | 7 |
да, там я тупанул немного. нужно было на примере 2-го задания проверить. а я проверил на примере 3-го.
Добавлено через 27 минут Вариантов больше нет, все идеально? Вот еще есть правила решения
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 19:53 | 8 |
Автор уже отправил свои варианты или ждет пока ему напишут другие решения тут?
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 19:58 | 10 |
Сразу вопрос по первой задаче: с какой целью была использована рекурсия?
0
|
26.07.2013, 20:01 [ТС] | 11 |
Сначала я решил это задание простым циклом. Во временную строку записывал остатки от деления, а потом эту строку переписал в обратном порядке в _result. Получилось громоздко. Рекурсия позволяет сразу записывать результат в строку в правильном порядке.
0
|
415 / 411 / 95
Регистрация: 06.10.2011
Сообщений: 832
|
||||||
26.07.2013, 20:05 | 12 | |||||
нет. что-то я погорячился)
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 20:13 | 13 |
Мимино, думаю, стоит все-таки реализовать итеративное решение, с возможностью пропуска начальных нулей, раз того требует постановка задачи.
Olivеr, если бы и нет - к подобным функциям было бы неплохо еще прикладывать портянку комментариев с пояснениями) Добавлено через 3 минуты Мимино, по второй задаче стоит, пожалуй, задуматься над вопросами: 1) а нужны ли там два счетчика в первом цикле, где происходит заполнение массива? 2) а можно ли в цикле со случайными перестановками обойтись одним вызовом rand()?
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 20:15 | 15 |
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 20:19 | 17 |
Ок. Значит, просто рекурсию убрать. И дополнительный буфер в итеративном решении ни к чему, я думаю.
0
|
26.07.2013, 20:21 [ТС] | 18 | |||||
1) Да, можно так
0
|
3257 / 2059 / 351
Регистрация: 24.11.2012
Сообщений: 4,909
|
|
26.07.2013, 20:22 | 19 |
0
|
26.07.2013, 20:23 [ТС] | 20 |
ммм.... а как? если бы было заранее известно количество символов в строке, то да, итеративно без доп.буфера. Ну или если бы функция имела бы тип возвращаемого значения не void, можно было бы возвращать указатель на первый ненулевой элемент строки.
0
|
26.07.2013, 20:23 | |
26.07.2013, 20:23 | |
Помогаю со студенческими работами здесь
20
ООП. Тестовое задание собеседования. Тестовое задание для трудоустройства Небольшое тестовое задание в финской компании. Тестовое задание от работадателя. Хотелось бы услышать критику. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Блоги программистов | |||||
Как перейти с Options API на Composition API в Vue.js
BasicMan 06.01.2025
Почему переход на Composition API актуален
В мире современной веб-разработки фреймворк Vue. js продолжает эволюционировать, предлагая разработчикам все более совершенные инструменты для создания. . .
|
Архитектура современных процессоров
inter-admin 06.01.2025
Процессор (центральный процессор, ЦП) является основным вычислительным устройством компьютера, которое выполняет обработку данных и управляет работой всех остальных компонентов системы. Архитектура. . .
|
История создания реляционной модели баз данных, правила Кодда
Programming 06.01.2025
Предпосылки создания реляционной модели
В конце 1960-х годов компьютерная индустрия столкнулась с серьезными проблемами в области управления данными. Существовавшие на тот момент модели данных -. . .
|
Полезные поделки на Arduino, которые можно сделать самому
raxper 06.01.2025
Arduino как платформа для творчества
Arduino представляет собой удивительную платформу для технического творчества, которая открывает безграничные возможности для создания уникальных проектов. Эта. . .
|
Подборка решений задач на Python
IT_Exp 06.01.2025
Целью данной подборки является предоставление возможности ознакомиться с различными задачами и их решениями на Python, что может быть полезно как для начинающих, так и для опытных программистов.
. . .
|
С чего начать программировать микроконтроллеры
raxper 06.01.2025
Введение в мир микроконтроллеров
Микроконтроллеры стали неотъемлемой частью современного мира, окружая нас повсюду: от простых бытовых приборов до сложных промышленных систем. Эти маленькие. . .
|
Из чего собрать игровой компьютер
inter-admin 06.01.2025
Сборка игрового компьютера требует особого внимания к выбору комплектующих и их совместимости. Правильно собранный игровой ПК не только обеспечивает комфортный геймплей в современных играх, но и. . .
|
Обновление сайта www.historian.by
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
|
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
|
Модель полного двоичного сумматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list):
s=^y]
p=x and y
for i in range(1,len(x)):
s. append((x^y)^p)
p=(x and y)or(p and (x or y))
return s
x=list()
y=list()
|
Это мы не проходили, это нам не задавали...(асихронный счётчик с управляющим сигналом зад
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
|
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
|