Cod sursa(job #2474196)

Utilizator Rufus007Marincia Catalin Rufus007 Data 14 octombrie 2019 20:32:24
Problema A+B Scor 100
Compilator rs Status done
Runda Arhiva de probleme Marime 0.77 kb
//Problema A+B link https://www.infoarena.ro/problema/adunare

use std::fs::File;
use std::io::{self, BufWriter, BufReader, BufRead, Write, Error, ErrorKind};

fn read(path: &str) -> impl Iterator<Item=i64> {
    let file = File::open(path).expect(&format!("couldn't open file {}", path));
    let br = BufReader::new(file);

    br.lines()
        .map(|line| line.expect("couldn't read line"))
        .flat_map(|line| {
            line
                .split_whitespace()
                .map(|num| num.parse().expect("not a number")).collect::<Vec<i64>>()
        })
}

fn main() {
    let mut iter = read("adunare.in");
    let mut fileout = BufWriter::new(File::create("adunare.out")
        .expect("Not being able to create file"));
    writeln!(fileout, "{}", iter.sum::<i64>());
}