Avazart
лучше в одном цикле
Avazart
хранишь индекс начала слова и конца и сразу печатаешь
Elon
Нуу это если чисто алгоритм хочется )
Владислав
Avazart
Elon
Но для новичков думаю лучше без сплита писать
Gleb
задача просто в массиве все отрицательные возвести в квадрат. ошибка происходит уже во время выполнения программы, после присваивания размерности массива
Avazart
Лучше написать по разному и возможно осознать что будет по скорости и по памяти
Elon
anti
прошу прощения а общая алгебра и конкретно тема эллиптических кривых обычно на каком курсе вуза изучается?
Avazart
Между % и d пробел?
Elon
Avazart
Gleb
Между % и d пробел?
ахах, давайте сделаем вид что этого не было и я ничего не спрашивал, спасибо, все заработало )
Gleb
)
Avazart
Ну и проверять нужно разверность после ввода что бы не выйти за реальные размеры 5x5
Alexander
Avazart
Gleb
из методички, скопипастил
Avazart
ну задача может быть на динамическое выделения памяти через malloc(Cи) или new(C++)
Gleb
си
Gleb
окей, учту
Avazart
Ну и по хорошему ввод/вывод неплохо бы оформить отдельными ф-циями.
Avazart
если конечно уже учили ф-ции
Vladislav
Gleb
Vladislav
Vladislav
мне интересно
Gleb
задача просто в массиве все отрицательные возвести в квадрат. ошибка происходит уже во время выполнения программы, после присваивания размерности массива
Vladislav
Дима
Всем привет. Есть задача: Дан массив состоящий из латинских символов. Каждый символ в массиве можно заменить на любое целочисленное число. После замены все идентичные символы будут также заменены на такое же число.
Определите, возможно ли сделать сумму значений массива равной k.
Ввод:
sub_array - массив латинских символов, 0<length(sub_array)<20, sub_array[i]="x" | "y" | "z"
k - значение суммы массива, которую нужно получить, 0<k<150
Вывод:
Boolean - можно или нельзя сделать сумму значений массива sub_array равной k
Дима
Первый пункт получить все уникальные символы и их количество, а что дальше делать не могу сообразить. Поможете построить алгоритм? :D
Avazart
ЯП ?
Дима
да в целом всё равно, но решаю на питоне
Дима
Тут надо уравнение по идее сначала составить, но с математикой я поругался в восьмом классе, а подружится ещё не успел, хотя и пытаюсь
Avazart
Ну задание не на метематику.
Vladislav
Дима
Там подают буковки
Vladislav
нууу
Avazart
Нужно плясать от суммы
Vladislav
буковки - это символы, а символы - это числа, которые имеют свой знак в таблице ASCII.
Avazart
и повторяющихся букв
Дима
Avazart
Дима
Там не про кодировки, а про замену
Vladislav
я не понел. Дайте пример,
Дима
Пример:
sub_array = ["x", "x", "x", "y", "y"]
k = 12
get_result(sub_array, k) = True // Можно заменить x на 2, y на 3, тогда получится [2, 2, 2, 3, 3]
Vladislav
а почему мы заменили х на 2?
Vladislav
аааааааааааааааааааааааааааааааааааааааааааааааааааааааа
Avazart
Это нужно сделать. Нужно заменить так что бы сумма подошла
Vladislav
а если массив:
'a', 'g', 'y', 'y', 'a'
как тогда?
Avazart
["x", "x", "x", "y", "y"] можно наверное представить как 3*x + 2*y = k
Дима
надо подобрать такую замену каждого из символов чтоб в сумме дали требуемую сумму. Если такой нет вернуть фолс
Avazart
А затем наверное можно циклом перебором подбирать
Дима
Упираемся в то, что можжет быть 2х + 4у + z
Avazart
цифры
Avazart
Ну ты на первой итерации принимаешь x=1 y=x+1 а z считаешь z = k - 2*x -4*y
Avazart
И проверяешь что бы z > y < 150
Avazart
Ну и наверное еще рекурсия нужна
Avazart
так как к y можно сначала прибавить 1 а потом 2 итд.
Avazart
если z неподходит
Avazart
Можно еще попробовать плясать от среднего
Avazart
типа если сумма равна 12 то а букв 5 то 12/5 это среднее число на букву
Avazart
и остается сделать так что бы числа соответв буквам +- отличались от среднего
Avazart
т.е подгонять их под сумму
ʟʊƈɨʄɛʀ
Avazart
Но не поняв технику будет долго бегать по полю без мяча.
Avazart
ну или без забитых голов )
Oleksii
Avazart
Разве?
Дима
Ща
Avazart
В питоне есть класс Counter
Дима
Это вывод словаря в консоль. Мы его немного модифицируем и получаем k=a+b+2bc
Дима
bc не математическое в данном случае
Avazart
bc?