В выводе каждую цифру выводит с новой строки

В выводе каждую цифру выводит с новой строки, а распаковываю группу, хотел бы, чтобы в выводе каждый ответ записывался с новой строки.

Вот сам код:

import itertools
import math

def isPrime(n):
    assert n>=0
    if n < 2:
        return False
    return all(n % t != 0 for t in range(2, math.floor(math.sqrt(n)) + 1))


def groupPrimes(s):
    k = 0
    prevN = 0
    for n in s:
        prime = isPrime(abs(n))
        if not prime or prevN > n:
            k += 1
        if prime:
            yield k, n
        prevN = n


def main():
    a = map(int, input().split())
    b = groupPrimes(a)
    c = ( 
        tuple(n for _, n in g)
        for k, g in itertools.groupby(b, key=lambda v: v[0])
    )
    
    x = ((len(g), sum(g)) for g in c)

    e = max(x, default=(0,0))

    print(*e)

main()

Например я ввожу ряд чисел с экрана

-2 0 5 7 6 8

и хочу, чтобы с экрана выводило так

2
12

Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так

import itertools
import math

def isPrime(n):
    assert n>=0
    if n < 2:
        return False
    return all(n % t != 0 for t in range(2, math.floor(math.sqrt(n)) + 1))


def groupPrimes(s):
    k = 0
    prevN = 0
    for n in s:
        prime = isPrime(abs(n))
        if not prime or prevN > n:
            k += 1
        if prime:
            yield k, n
        prevN = n


def main():
    a = map(int, input().split())
    b = groupPrimes(a)
    c = ( 
        tuple(n for _, n in g)
        for k, g in itertools.groupby(b, key=lambda v: v[0])
    )
    
    x = ((len(g), sum(g)) for g in c)

    e = max(x, default=(0,0))

    print(*e, sep='\n')

main()
→ Ссылка