プログラミングのお題スレ Part22 (858レス)
上下前次1-新
抽出解除 レス栞
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
35(1): デフォルトの名無しさん [] 2023/08/11(金) 17:25:08.27 ID:I5t9Gg6x(1) AAS
遅延評価は馴染みない人にはわからんからしょうがない
37: デフォルトの名無しさん [sage] 2023/08/11(金) 22:35:55.39 ID:H5Y2+fuz(1) AAS
>>35
遅延評価は色んな言語にあるよ
その対象や動作は各言語や各機能によって様々で
PromiseやFutureのような非同期に遅延評価されるものもあるけど
今回のお題だとC#のLINQメソッドチェーンによる遅延評価やRubyのlazy指定などが有効だね
>>1515(2): デフォルトの名無しさん [sage] 2023/08/08(火) 19:36:27.56 ID:ODiXw46s(1) AAS
>>3
Rust
use std::collections::HashSet;
use std::io::{self, BufRead, BufReader};
fn main() {
match BufReader::new(io::stdin())
.lines()
.map(Result::unwrap)
.filter(|line| {
line.bytes()
.filter(|b| matches!(b, b'A'..=b'Z'| b'a'..=b'z'))
.collect::<HashSet<_>>()
.len()
.eq(&26)
})
.min_by_key(String::len)
{
Some(shortest) => println!("{shortest}"),
None => eprintln!("ERROR: no matched lines"),
}
}
のRustのイテレータメソッドチェーンも遅延評価されるから何万行の入力が来てもメモリを消費せずに済むね
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.037s