結果
| 問題 | No.289 数字を全て足そう | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2015-12-28 02:29:27 | 
| 言語 | Rust (1.83.0 + proconio) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 1 ms / 1,000 ms | 
| コード長 | 698 bytes | 
| コンパイル時間 | 20,131 ms | 
| コンパイル使用メモリ | 376,276 KB | 
| 実行使用メモリ | 6,820 KB | 
| 最終ジャッジ日時 | 2024-10-08 00:36:58 | 
| 合計ジャッジ時間 | 12,834 ms | 
| ジャッジサーバーID (参考情報) | judge2 / judge3 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 21 | 
ソースコード
use std::io;
use std::io::BufRead;
fn main() {
    let reader = io::stdin();
    let mut buffer = reader.lock();
    //let writer = io::stdout();
    let mut sum = 0;
    loop {
        let consumed = match buffer.fill_buf() {
            Ok(bytes) if bytes.len() == 0 => break,
            Ok(bytes) => {
                sum += bytes.iter().fold(0, |acc, &item|
                    if item > 48 && item < 58 {
                        acc + item as u32 - 48
                    } else {
                        acc
                    });
                bytes.len()
                },
            Err(_) => panic!()
        };
        buffer.consume(consumed);
    }
    println!("{}", sum);
}
            
            
            
        