Задать вопрос
  • Как найти такие 2 числа в последовательности, сумма которых будет кратна m?

    BitNeBolt
    @BitNeBolt
    Ваша программа сверяет те элементы, которые уже сверяля раньше. Также, если последовательность состоит из одинаковых чисел, а делиться должно на 1 (к примеру), то ничего не выводится, хотя должно

    Попробуйте следующие циклы:
    for i in range(0, n):
        for j in range (i, n):
            if ((x[i] + x[j]) % m == 0):
                print(x[i], x[j])
    Ответ написан
    Комментировать
  • Как найти такие 2 числа в последовательности, сумма которых будет кратна m?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Создаём M списков (0..M-1). Каждое получаемое число Xi записываем в список Xi % M. Затем выводим пары из списков (0, 0), (1, M-1), (2, M-2), ... (M/2, M/2).
    Ответ написан
    2 комментария
  • Как найти такие 2 числа в последовательности, сумма которых будет кратна m?

    mayton2019
    @mayton2019
    Bigdata Engineer
    1) Поскольку в задаче нет ограничения на память - то мы можем спокойно использовать мемоизацию для хранения нужных нам ответов.
    2) В процессе ввода (предполагается что ввод будет неспешный и задумчивый) чисел {n} мы строим хеш-таблицу всех возможных сочетаний пар {m(i),m(j)} где ключами будет кратность суммы этой пары. Здесь ключом будет сет чисел которые кратны этой сумме. Для простоты - табличку можно денормализовать и хранить несколько записей на 1 ключ. Например для {20,4}, будет кратность 2, 3, 4, 6, 8.
    3) Еще для упрощения можно отбросить составные числа ключа (4, 6, 8) и хранить цепочку простых.
    4) У этой задачи - бесконечное направление оптимизаций системы хранения этой таблицы. Зависит от дерзости автора. А он ... как видно парень очень суровый и дерзкий.
    Ответ написан
    Комментировать
  • Как изменить размер шрифта у всех текстов на 50 процентов?

    Не вариант?
    $("*").each(
    	function() {
    		if($( this ).css('fontSize')){
    			$( this ).css({
    				fontSize: ((parseFloat($( this ).css('fontSize')) / 2) + ($( this ).css('fontSize').replace(/\d*[.]*\d*\s*/,"")))
    			});
    			$( this ).css({
    				fontSize: "50%"
    			});
    		}
    	}
    )
    Ответ написан
    Комментировать
  • Как решить задачу?

    trapwalker
    @trapwalker Куратор тега Python
    Программист, энтузиаст
    В питоне строки - это объекты и у этих объектов есть встроенные функции (называются они "методы").
    Так вот, у строки есть такие методы:
    > '1234567'.isdigit()
    True
    > '123.45.67'.isdigit()
    False
    > '1234567'.isalpha()
    False
    > 'Smith'.isalpha()
    True

    Только вам бы следовало проверять еще и длину и вообще все условия, озвученные в задании.
    Дальше думайте. Вы должны пройти этот путь самостоятельно.
    Попробуйте собрать введённые строки в список и пройти по нему циклом. В цикле вы можете сделать проверки и распределение строк по соответствующим переменным.

    Вообще сейчас выскажу довольно "капитанскую" мысль, но такие задания обычно не дают без предварительной информации как их делать. Вы видимо пренебрегли теоретической частью. То, как вы пытаетесь решить эту задачу, даже если вам удастся это, будет неправильным решением. Слышали выражение "ректальная тонзилитомия"? Могу ошибаться, но кажется это когда гланды удаляют через задницу. Вот даже если это бы удалось, делать так неправильно, а вы в своём коде именно этим, фигурально выражаясь, и занимаетесь.
    Я понимаю, что вы хотели здесь получить готовое решение с пояснениями, но это не добавит вам знания и не заменит тот теоретический курс, на который вы, видимо, забили.
    Ответ написан
    7 комментариев
  • Как вывести спираль из звездочек с разделителем на Python?

    @Karpion
    Вот программа на BBС-basic, разбирайтесь:
    n=18
    DIM a(n,n)
    FOR x=1 TO n
    	FOR y=1 TO n
    		a(x,y)=ASC(" ")
    	NEXT
    NEXT
    
    FOR y=1 TO n
    	a(1,y)=ASC("*")
    	a(y,1)=ASC("*")
    	a(y,n)=ASC("*")
    NEXT
    
    x=n : y=n
    u=0 : v=-1
    
    FOR i=1 TO n-3
    	WHILE a(x+u+u,y+v+v)<>ASC("*")
    		x+=u
    		y+=v
    		a(x,y)=ASC("*")
    	ENDWHILE
    	w=v : v=-u : u=w
    NEXT
    
    FOR y=1 TO n
    	FOR x=1 TO n
    		PRINT CHR$(a(x,y));
    	NEXT
    	PRINT
    NEXT
    PRINT
    Немного совсем не то. Позже доделаю. Но думаю, принцип понятен.
    Ответ написан
    1 комментарий
  • Как исправить ошибку substring not found?

    longclaps
    @longclaps
    for s in 'a aab abc abb'.split():
        print([s.find(c) for c in s])
    Ответ написан
    1 комментарий