Главная Юзердоски Каталог Трекер NSFW Настройки

Программирование

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 54 4 30
15 лет программирую на С++ Не могу решить easy задачку на литкоде уже 3 часа. Ебало моё имагинирова Аноним 23/10/24 Срд 17:33:46 3306557 1
15842009278680.png 95Кб, 266x286
266x286
15 лет программирую на С++
Не могу решить easy задачку на литкоде уже 3 часа.

Ебало моё имагинировали?

задача 13. Roman to Integer с виду кажется изи...
Аноним 23/10/24 Срд 17:45:03 3306569 2
>>3306557 (OP)
Решение принципиально не смотрю.
Но кроме как городить парсер с таблицей переходов идей нету, но кажется что должно быть какое-то легкое решение в пару строк...
Аноним 23/10/24 Срд 18:00:17 3306582 3
Я просто сижу и смотрю на задачу как дурак, я нихуя не могу сообразить просто в голове пустота, я пытался начинать писать код и там по накатанной что-то сделать но всё равно ноль.
Походу я всё.
Аноним 23/10/24 Срд 18:28:53 3306592 4
>>3306582
Скорее всего твоя затыка в том что ты хочешь решить красивее чем требуется для прохождения тестов. Попробуй просто решить "в лоб"
Аноним 23/10/24 Срд 19:39:17 3306656 5
>>3306557 (OP)
А нах там что-то решать? За это не платят же.
Аноним 23/10/24 Срд 20:47:48 3306699 6
>>3306592
Да мне даже в лоб не приходило решение, но я и условия до конца не сразу понял, думал перед числами может быть произвольное кол-во символов и т.д. короче думаю надо писать сложный парсер который будет смотреть вперед и т.д.

>>3306656
Ну чтоб на работку устроиться на новую где плотят збс.
Да и так мозги расшевелить.


Короче поздравьте меня пол дня угробил на решение изи задачи лол.

int romanToInt(string s) {
array<int, 128> t;
t['I'] = 1;
t['V'] = 5;
t['X'] = 10;
t['L'] = 50;
t['C'] = 100;
t['D'] = 500;
t['M'] = 1000;

vector<tuple<char, char, int>> states=
{
{'V', 'I', 4},
{'X', 'I', 9},
{'L', 'X', 40},
{'C', 'X', 90},
{'D', 'C', 400},
{'M', 'C', 900},
};

auto is_transition = [&](char prev, char cur) {
for(auto [ch1, ch2, v] : states)
{
if(ch1 == prev && ch2 == cur)
return tuple{true, v};
}

return tuple{false, 0};
};

int sum{};
bool post_sum = false;

while(!s.empty())
{
char prev = s.back();
s.pop_back();

if(s.empty())
{
sum += t[prev];
break;
}

char cur = s.back();
s.pop_back();

auto [trans, val] = is_transition(prev, cur);
if(trans)
{
sum += val;
}
else
{
sum += t[prev];
s.push_back(cur);
}
}

return sum;
}
Аноним 23/10/24 Срд 20:58:22 3306706 7
>>3306557 (OP)
Решал эту задачу пару месяцев назад. Решение действительно есть в строчек 10 основного кода. Просто не надо усложнять. Видимо какая-то проф деформация произошла. Когда всегда стараешься действовать по шаблону, рассчитывая, что задача объемная и его применение окупится.

Мимо с 10-летним опытом плюсов.
Аноним 23/10/24 Срд 21:02:25 3306710 8
>>3306699
Ебать ты нахуярил. Мое почтение.
Аноним 23/10/24 Срд 21:08:38 3306713 9
>>3306706
>>3306710
Спасибо. Да глянул ща решения, там реально в 5 строк можно это сделать. Но пох.
Аноним 23/10/24 Срд 21:51:13 3306733 10
>>3306699
> на работку
На какой работе требуется решать задачки из универских лаб?
Аноним 23/10/24 Срд 22:09:22 3306739 11
>>3306557 (OP)
Сегодня решал её утром пару часов, решил оставить на завтра. Задизморалился на весь день. Там же уровень easy, а я вроде уже не должен быть easy.
Мимо 4 года плюсов.
Аноним 23/10/24 Срд 22:47:18 3306761 12
>>3306557 (OP)
Это нормально. Литкод - это же головоломки для тех, кому скучно, что-то типа кроссвордов или шахматных этюдов. К работе программиста оно никакого отношения не имеет. Дебилы на менеджерах зафорсили эти задачки, а потом удивляются, почему в их сраный тиньков люди не идут и вакансии висят по полгода.
Аноним 24/10/24 Чтв 09:26:18 3306937 13
>>3306733
На работе никакой практически, на собесах - на всех.
Зачем? А потому что фаанг так делали, а мы тупо как бараны решили повторить.
Аноним 24/10/24 Чтв 09:27:00 3306938 14
>>3306739
Там главное условия хорошо понять, само решение можно сделать очень простым.
Аноним 24/10/24 Чтв 20:42:50 3307354 15
image.png 39Кб, 657x645
657x645
Решил сегодня 10 задач и сейчас наткнулся на очередную EASY задачу....
70. Climbing Stairs

Я блять в ахуе.
Ладно, думаю задача по комбинаторике, взял бектрекинг алгоритм нахуярил и оно сука не работает на больших числах ( еще бы ), при n=44 time limit exceeded. Конечно блять там же миллион комбинаций может быть. Я хз. Наверное я слишком тупой. Решения как всегда не смотрел еще. Но уверен индусы решили в 2 строки.
Аноним 24/10/24 Чтв 21:22:25 3307374 16
>>3307354
Глянул решение, оказывается это решается через последовательность фибоначи... блять я что вам математик чтобы до этого додуматься? Тут реально нужно знать именно решение этой задачи, самому догадаться очень тяжело, еще и будучи не математиком. Там даже челы в комментах пишут со степенями в CS что не могли решить, и даже челы с мат. бэкграундом не все могут решить ... этож пиздец изи задача, лол
Аноним 24/10/24 Чтв 23:10:49 3307429 17
>>3307374
Решение алгоритмических задач это не про iq. Нарешиваешь какое-то количество задач и запоминаешь паттерны. Потом уже глядя на условия примерно представляешь что заюзать.
Аноним 25/10/24 Птн 04:23:27 3307501 18
>>3307374
Теперь ты понимаешь, почему все хейтят литкод на собесах. В этой задаче ты должен заучить решение, догадаться тут невозможно. Тупо тест на память, с таким же успехом можно спрашивать отрывки из Шекспира.
Аноним 25/10/24 Птн 04:41:58 3307502 19
Литкод всегда был и будет про математическое решение задач уровня школы-универа. На уровне "вот тебе формула, просто подставь числа, когда увидешь что-то похожее". Ну знаешь, когда тебе давали условную теорему Ролля, а почему и зачем - не обьясняли. Просто видишь знакомый паттерн, то применяй эту теорему.
Кстати, вдохновился твоей идеей и тоже решил порешать некоторые задачи и выпал с two-sum. Я не понимаю, какой сверхразум ее придумал, но отдаю должное, до решения через одинарную мапу и .containsKey() хрен когда додумался бы.
Мимо джава 3 года
Аноним 25/10/24 Птн 13:09:22 3307730 20
>>3306557 (OP)
>задача 13. Roman to Integer с виду кажется изи...
Посмотрел. Оказывается, решал её пару лет назад, правда на петухоне. Смотрю решение и не могу понять, как пришёл к нему.
Литкод смысл дрочить только перед собеседованиями.
Аноним 27/10/24 Вск 07:17:54 3308731 21
>>3306699
Ебать ты нагородил там, задача в одну строку буквально решается:
fromRoman ← {+/⍵ׯ1*(1↓⍵,0)>⍵} (⌷∘ 1 5 10 50 100 500 1000¨'IVXLCDM' ⍳⊢)

>fromRoman 'XIX'
>19
Аноним 27/10/24 Вск 07:24:56 3308732 22
Аноним 27/10/24 Вск 08:04:11 3308739 23
Аноним 27/10/24 Вск 08:36:18 3308750 24
>>3308731
Лол, на этой хуйне кто-то в серьез что-то пишет?
Аноним 27/10/24 Вск 08:55:38 3308756 25
>>3308750
Покажи не хуйню. Сможет она потягаться в выразительности с этим старичком 60х годов?
Аноним 27/10/24 Вск 10:14:05 3308770 26
>>3308756
>Сможет она потягаться в выразительности
Perl
Аноним 27/10/24 Вск 10:20:20 3308780 27
Аноним 27/10/24 Вск 10:42:17 3308795 28
>>3308780
while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=(
$m=(11,10,116,100,11,122,20,100)[$_/16%8])&110;$t^=(72,@z=(64,72,$a^=12($_%16
-2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16..271);if((@a=unx"C
",$_)[20]&48){$h
=5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/;$
d=unxV,xb25,$_;$e=256|(ord$b[4])<<9|ord$b[3];$d=$d>>8^($f=$t&($d>>12^$d>>4^
$d^$d/8))<<17,$e=$e>>8^($t&($g=($q=$e>>14&7^$e)^$q8^$q<<6))<<9,$_=$t[$_]^
(($h>>=8)+=$f+(~$g&$t))for@a[128..$#a]}print+x"C
",@a}';s/x/pack+/g
Аноним 27/10/24 Вск 11:02:00 3308803 29
>>3308795
И что этот кусок должен должен был продемонстрировать? Что код на перле, как и на любом другом языке, можно обфусцировать?
Аноним 27/10/24 Вск 11:42:24 3308831 30
>>3308803
Что этот код выглядит примерно так же как и твоё говно на APL которое никто не поймет
Аноним 27/10/24 Вск 15:59:24 3308981 31
>римская сс в десятичную
В чём сложность задачи? Нихуя не понял.
Аноним 27/10/24 Вск 21:22:38 3309153 32
>>3308831
Хм... а с чего ты решил, что незнакомый язык должен быть тебе понятен? Ты у мамы особенный? Сеньор-смуззихлёб, который прохавал айти с самого низа: от жиквери до реакта?
>никто не поймет
Не нужно быть семи пядей во лбу, чтобы просто увидеть, что APL ебёт. А кого заинтересует, как именно и почему, те разберутся. Язык другой, но не такой сложный, каким кажется.
Аноним 29/10/24 Втр 07:41:29 3310040 33
>>3307354
>>3307374
Она решается очень просто, по индукции.
Допустим у тебя есть лесенки до $n$ ступеньки и ты знаешь для каждой от $1$ до $n$ сколько способов есть добраться до неё.
Допустим для $n$-ной есть $k$ способов. Добавим теперь одну ступеньку, всего $n+1$ ступенек. Добраться до $n$-ной $k$ способов, и потом остаётся один шаг. Получаем
$k_{n}$ способов + ?
Мы можем добраться до $n-1$ ступеньки и сделать 2 шага, окажемся на $n+1$-ступеньке.
$k_{n}+k_{n-1}+?$
ниже мы спускаться не можем, потому что при любом шаге мы попадем на уже известную ступеньку, а этот способ у нас уже записан.
Тогда $k_{n+1}=k_{n}+k_{n-1}$
то есть сумма способов для $n$-ной лесенке равна сумме способов двух предыдущих.
работаю на дноработах, последняя была дворником
Аноним 29/10/24 Втр 07:45:53 3310041 34
>>3310040
ебучая макака latex только к /math прикрутила
Аноним 29/10/24 Втр 14:17:48 3310435 35
>>3306569
ПРОСТО сделай таблицу всех доступных знаков, а потом циклом отрезай от строки первый попавшийся substring > -1 (от большего знака к меньшему) и плюсуюй в аккумулятор пока строка пустой не станет
мимо-олимпиадник по квадробингу
Аноним 29/10/24 Втр 14:28:11 3310458 36
>>3306557 (OP)
> Roman to Integer с виду кажется изи...
Ну ты и лох
Аноним 15/01/25 Срд 14:30:31 3362807 37
Я бы очканул за такое браться но как только ты сказал что оно легкое взял яйца в кулак и за полчаса методом биться башки об стену и ебли с ошибками компилятора выполнил задачку
Аноним 15/01/25 Срд 16:35:12 3362899 38
>>3310458
прикол уровня 8 лет занимаюсь паркуром не могу перешагнуть бордюр
Аноним 19/01/25 Вск 10:36:19 3366185 39
>>3310040
Охуеннно
зачем тебе латех для n+1?
Аноним 20/01/25 Пнд 03:41:24 3366921 40
>>3366185
Чтобы было красиво.
Вкатитсья так и не могу. Какая же скучная *уйня это ваше программирование, не могу себя заставить регулярно учиться. Ещё и сдвг душит. Видимо судьба прыгать по дноработам. Как выпал снег ушёл с дворника, кидать снег сил нет, перебираю овощи в магните.
Аноним 20/01/25 Пнд 22:16:34 3367629 41
>>3306699
как-то сложно, вот попроще

class Solution {
public:
Solution() : map_({
{"I", 1},
{"V", 5},
{"X", 10},
{"L", 50},
{"C", 100},
{"D", 500},
{"M", 1000},
{"IV", 4},
{"IX", 9},
{"XL", 40},
{"XC", 90},
{"CD", 400},
{"CM", 900}

}) {}
std::string last_ {};
std::unordered_map<std::string, int> map_;
int sum_ {};
int romanToInt(string s) {
for (auto c : s) {
std::string current(1, c);
std::string combined = last_ + current;
int v = map_[combined];
if (!v) {
v = map_[current];
}else{
sum_ -= map_[last_];
}
sum_ += v;
last_ = current;
}
return sum_;
}
};
Аноним 13/02/25 Чтв 17:53:40 3388537 42
>>3306557 (OP)
Всё нормально, братан, у меня поменьше опыта, лет 10 тока и не в крестах а в джаве, но литкод поначалу вызывал некоторые проблемы, это нормально, главное верь в себя, не останавливайся и не зацикливайся на неудачах.
Аноним 13/02/25 Чтв 18:03:58 3388542 43
>>3306557 (OP)
Ты просто заточился на решение продуктовых задач, а не на олимпиадное дрочево для волчар.
Аноним 13/02/25 Чтв 18:24:04 3388556 44
image.png 232Кб, 1502x2084
1502x2084
>>3388542
Хотя нет. Пошла искать что у тебя там за задача. Это чисто на салфетке решение за 5 минут.
Аноним 13/02/25 Чтв 18:27:37 3388561 45
image.png 251Кб, 1082x2074
1082x2074
>>3388556
И если подумать немного
Аноним 14/02/25 Птн 10:22:40 3388916 46
>>3388542
Волчары как раз не могут в алгособесы разве что покопировать ответ гопоты
Аноним 17/02/25 Пнд 15:27:01 3390964 47
Аноним 20/02/25 Чтв 10:35:36 3392979 48
>>3388556
>IV CM etc. константами
Кринж
Аноним 17/03/25 Пнд 22:18:20 3410635 49
>>3306557 (OP)
Чел. мяу только 4 года опыта коммерческого опыта. На прошлой неделе откопал литкодовский аккаунт, часа 4 решал блять задачу по мерджу отсортированных списков номер 21, с кучей неудачных попыток
Пиздец, такой стыд, мне аж до сих пор неприятно
Аноним 23/03/25 Вск 18:02:39 3414407 50
>>3306582
>Я просто сижу и смотрю на задачу как дурак, я нихуя не могу сообразить просто в голове пустота

ты просто долбоеб как и все программисты.
Аноним 23/03/25 Вск 18:17:57 3414421 51
>>3414407
Конечно. Только долбоеб будет считать, что обязан решить любой ребус который случайно увидит.
Аноним 25/03/25 Втр 12:08:48 3415599 52
>>3306557 (OP)
Литкод задачи решаются по шаблонам. Там всего штук 20 шаблонов, которые покрывают подавляющее большинство задач. Вся суть в том, прочитать условие задачи, понять каким шаблоном ее нужно решить и собственно решить. От балды ты много задач не нарешаешь.
Аноним 25/03/25 Втр 12:29:58 3415622 53
>>3415599

Я все задачи от балды решаю (кроме хардов)
Аноним 25/03/25 Втр 20:20:23 3416025 54
>>3415599
Смотря какие цели ты преследуешь. Я решаю от балды например, но не литкод, а кодварс, там много задач надёргано отовсюду, не только с алгособесов и не все ты решишь каким то методом. Да и вообще то что ты знаешь метод это не значит что ты им владеешь
Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов