[過去ログ] 関数型プログラミング言語Haskell Part32 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
20(2): デフォルトの名無しさん [sage] 2019/02/03(日) 21:20:07.09 ID:RwDwNYzW(2/27) AAS
>>15
ほとんど同じ説明だが…
関数の定義が
fact 0 = 1
fact n = n * fact(n - 1)
となっている。
このとき、左辺が右辺に置き換えられる (簡約という)
つまり fact 3 は 3 * fact 2 に置き換えられる
そして fact 2 は 2 * fact 1 に置き換えられる
そして fact 1 は 1 * fact 0 に置き換えられる
ひとつめの関数の定義により、fact 0 は 1 に置き換えられるので
置き換えはここでとまる
以上をまとめると
fact 3
= 3 * fact 2
= 3 * 2 * fact 1
= 3 * 2 * 1 * fact 0
= 3 * 2 * 1 * 1
= 6
126: デフォルトの名無しさん [sage] 2019/02/03(日) 23:06:11.09 ID:RwDwNYzW(26/27) AAS
>>125 がんばれよー
127: デフォルトの名無しさん [] 2019/02/03(日) 23:06:13.09 ID:9SI0qp6C(1) AAS
fact 0 = 1 は、fact 0 = fact (fact 0)ではありません。
128: デフォルトの名無しさん [sage] 2019/02/03(日) 23:06:37.09 ID:PKgH5/Eo(6/6) AAS
>>120
>>60で
> もちろんそのように考えてる
って書いてるけどそのように考えてなかったよね…
227(1): デフォルトの名無しさん [sage] 2019/03/09(土) 13:49:45.09 ID:Vn/el/At(3/3) AAS
>>225 >>226
例えば AtCoder の参加者のコードを見てみると分かるが、
STモナドなんて使ってるヤツはいない。
そもそも、haskell に慣れたら、STモナドなんて使いにくいだけだろ。
競プロみたいな短く速いコードを書く必要があるなら尚更。
珠玉本を理解しきった者かどうかは知らんが、
極端に短いコードで解いてくるヤツは、
どちらかといえば数学の知識が豊富なんじゃないかな。
問題文を数学の世界に落とし込む事に長けているように見える。
コンテストにもよるが、競技プログラミングは
個人的にはアルゴリズム力よりも数学力がより大事だと思ってる。
例えば Project Euler の高番号問題をシンプルに解けるヤツは競技も強そう。
455: デフォルトの名無しさん [sage] 2019/08/27(火) 14:01:37.09 ID:aYd+hskG(2/2) AAS
レコードでなくMap型ならモノイドで足して上書きしていけるのに。
674(1): デフォルトの名無しさん [sage] 2019/11/03(日) 16:32:47.09 ID:nhaRMy12(1) AAS
『達人プログラマー』でも「毎年1つ新しい言語を学べ」と言っている
まあ凡人にそこまでは厳しくとも
たまに新しいプログラミング・パラダイムに触れることは
プログラマーにとって有益であると思うよ
それは知識として即効性のあるものというよりは(そういうのもあるかもしれないが)
1年2年経って効いてくるタイプのものかなと
703: ◆QZaw55cn4c [sage] 2019/11/04(月) 22:04:39.09 ID:fwURXfb5(2/2) AAS
>>702
thx a lot !
英語は読めないのですが、想像していなかったくらいに簡潔ですね…
814: デフォルトの名無しさん [sage] 2019/11/29(金) 23:26:58.09 ID:rLKSZgh6(1) AAS
命題
IOモナドではない ⇒ O(1)で参照できる配列構造を作れない
を証命せよ
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.068s