Avazart
лучше в одном цикле
Avazart
хранишь индекс начала слова и конца и сразу печатаешь
Elon
Нуу это если чисто алгоритм хочется )
Elon
с нуля попроще без слитов
С сплитами там две строчки)
Elon
Но для новичков думаю лучше без сплита писать
Gleb
задача просто в массиве все отрицательные возвести в квадрат. ошибка происходит уже во время выполнения программы, после присваивания размерности массива
Avazart
Лучше написать по разному и возможно осознать что будет по скорости и по памяти
anti
прошу прощения а общая алгебра и конкретно тема эллиптических кривых обычно на каком курсе вуза изучается?
Avazart
Между % и d пробел?
Gleb
А массив нужно изменить или просто запринтить ?
в массиве мы все значения отрицательные изменяем на их же в квадрате, после чего выводим этот же массив
Gleb
Между % и d пробел?
ахах, давайте сделаем вид что этого не было и я ничего не спрашивал, спасибо, все заработало )
Gleb
)
Avazart
Ну и проверять нужно разверность после ввода что бы не выйти за реальные размеры 5x5
Gleb
Ну и проверять нужно разверность после ввода что бы не выйти за реальные размеры 5x5
это универская задача, ввод вывод я просто пока скопипастил, сейчас буду все проверять, когда пойму что основная часть работает )
Gleb
из методички, скопипастил
Avazart
ну задача может быть на динамическое выделения памяти через malloc(Cи) или new(C++)
Gleb
си
Gleb
окей, учту
Avazart
Ну и по хорошему ввод/вывод неплохо бы оформить отдельными ф-циями.
Avazart
если конечно уже учили ф-ции
Vladislav
си
че за задача
Gleb
че за задача
Уже решили
Vladislav
Уже решили
ну покажи
Vladislav
мне интересно
Gleb
если конечно уже учили ф-ции
Да я давно уже на джаве просто си вообще давно не о крывал
Gleb
задача просто в массиве все отрицательные возвести в квадрат. ошибка происходит уже во время выполнения программы, после присваивания размерности массива
Дима
Всем привет. Есть задача: Дан массив состоящий из латинских символов. Каждый символ в массиве можно заменить на любое целочисленное число. После замены все идентичные символы будут также заменены на такое же число. Определите, возможно ли сделать сумму значений массива равной 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
нууу
Avazart
Нужно плясать от суммы
Vladislav
буковки - это символы, а символы - это числа, которые имеют свой знак в таблице ASCII.
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
ну или без забитых голов )
Дима
Ну ты на первой итерации принимаешь x=1 y=x+1 а z считаешь z = k - 2*x -4*y
Короче. Я там писал что мы сначала получаем уникальные символы и их количество. Так вот. Этот словарь в рамках питона и есть ключ к уравнению
Avazart
Разве?
Дима
Ща
Avazart
В питоне есть класс Counter
Дима
Это вывод словаря в консоль. Мы его немного модифицируем и получаем k=a+b+2bc
Дима
bc не математическое в данном случае
Avazart
bc?