← Catalogo
Fuori dal set ufficiale Rosalind
PyJS

1 Example A + B

Nota importante

Questo esercizio non fa parte del set ufficiale di problemi di rosalind.info (quelli con un codice ID come DNA, FIB, ecc.). "Bioinformatics Contest 2018" era una competizione di programmazione online organizzata da Bioinformatics Institute, Rosalind e Stepik, ospitata sulla piattaforma Stepik (https://stepik.org/course/4377), non sul sito rosalind.info stesso. Non esiste quindi una pagina enunciato permanente e pubblicamente accessibile su rosalind.info per questo esercizio specifico.

Descrizione (dedotta dal contenuto di input.txt e dal codice)

Si tratta del classico esercizio "warm-up" A+B tipico dei giudici automatici di programmazione: dato un numero n di righe seguito da n coppie di interi, calcolare e stampare la somma di ciascuna coppia.

Formato dell'input (dedotto)

n
a1 b1
a2 b2
...
an bn

Sample (dal file input.txt presente nella cartella)

10
1 5
9 9
...

Output atteso: la somma di ciascuna coppia, una per riga.

La mia esecuzione

08/24/2026 11:24:47

Nessun dataset.txt personale trovato per questo problema.

Output · run_log.txt

OK
6
18
13
9
7
8
10
8
12
9

Esegui nel browser · Pyodide

Mostra il codice sorgente (problem.py)
def	lettura(filename):
				with open(filename) as f:
					header	=	None
					body	=	[]			
					for	riga	in	f:
												riga	=	riga.rstrip("\n")
												if	header	is	None:			
															header	=	riga
												else:
															body.append(riga)
				assert header is not None
				data = (header,	body)
				return	data

def	main():
				data	=	lettura("input.txt")
				n = int(data[0])
				for	i	in	range(n):
					a, b = data[1][i].split(" ")
					print(int(a)+int(b))

if	__name__	==	"__main__":
				#	execute	only	if	run	as	a	script
				main()

Soluzione JavaScript

Esegui ora, live

Mostra il codice sorgente
// Contest 1 - Example A+B (Bioinformatics Contest 2018, fuori dal set
// ufficiale Rosalind) - soluzione JavaScript indipendente, non una
// trascrizione di problem.py: stessa logica (prima riga = numero di casi
// n, poi n righe con due interi "a b", stampa a+b per ciascuna),
// riscritta in modo idiomatico per JS.
//
// Contratto: riceve il contenuto testuale del file di input (per questo
// problema si chiama input.txt, non dataset.txt - gestito dal manifest,
// non da questo modulo), restituisce l'output testuale (stessa forma
// dell'output Python).
export default function solve(datasetText) {
  const righe = datasetText.split("\n").map((r) => r.replace(/\r$/, ""));
  const n = Number(righe[0]?.trim());

  if (!Number.isInteger(n) || n < 0) {
    throw new Error(`Input non valido: attesa una prima riga con un intero, ricevuto "${righe[0]}"`);
  }

  const output = [];
  for (let i = 0; i < n; i++) {
    const parti = (righe[i + 1] ?? "").trim().split(/\s+/);
    if (parti.length !== 2 || parti.some((p) => !/^-?\d+$/.test(p))) {
      throw new Error(`Input non valido alla riga ${i + 2}: attesi due interi "a b"`);
    }
    const [a, b] = parti.map(Number);
    output.push(a + b);
  }

  return output.join("\n") + "\n";
}