Embora seja uma linguagem pouco eficiente (quando comparada com C++), Python continua sendo uma opção, principalmente para problemas mais simples, ou então para problemas que envolvem manipulação de inteiros grandes, que são um pouco chatas em C++.


Leitura da entrada

De modo geral, a entrada pelo fluxo de entrada padrão do Python pode ser lida com o comando input():

x = input()

Porém, input() retorna uma string, com a linha inteira de entrada. Dessa forma, caso queira inteiros, é necessário fazer um casting para int:

x = int(input())

Algumas vezes, pode ser dado um array inteiro em uma linha para ser lido. Por exemplo, pode ser lido um array de strings da seguinte forma:

l = input().split(' ')
# exemplo de linha no input:
# abc bcd cde
# vai ler: l = ['abc', 'bcd', 'cde']

Caso sejam vários inteiros separados por espaços, pode ser feito o seguinte:

l = list(map(int, input().split()))
# exemplo de linha no input:
# 1 2 3 4
# l = [1, 2, 3, 4]

Formatação de Strings

A formatação de strings pode ser feita facilmente em Python3 com a utilização de f-strings. Por exemplo, antigamente, inserir um inteiro no meio de uma string era feita de forma parecida com C:

cnt = 5
print("cnt vale %d." % cnt)

Agora, com a utilização de f-strings, o código fica mais simples e fácil de ser entendido:

cnt = 5
print(f"cnt vale {cnt}.")

Basta colocar um f antes da string, e inserir as variáveis entre chaves {var}. Também é possível adicionar parâmetros a mais, como quantidade de casas após a vírgula em valores de ponto flutuante. Assim, usar f-strings pode facilitar muito, principalmente em problemas que demandam a escrita do output com algum formato em específico.

test_case = 3
answer = 3.586
print(f"Case {test_case}: {answer:.3f}")

Como testar o seu código

Caso você queira testar a saída de seu código de acordo com alguma entrada existente em um arquivo (por exemplo, 1.in), pode ser feito o seguinte (em um ambiente como o terminal Linux ou WSL):