トップ «前の日記(2017-12-21(Thu)) 最新 次の日記(2017-12-24(Sun))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2017-12-22(Fri) 同じ天気

dcで

a-z。昨日はやめておいたが、 今日は一応 commitしておいた。

$ dc -f "96sa122sz[la1+salaaPclalz>m]smlmx10aP"
abcdefghijklmnopqrstuvwxyz

ちょっと

「わたし、すたっく、ちょっとできる」と言ってもいいかしら。

$ dc -e "1p[1z10>b+p]sblbx"
1
2
3
4
5
6
7
8
9
10

1をスタックの最初に入れて、出力する。
そして「1を入れ、スタックの段数を見て、それが10になるまで 再帰(を9回繰り返し、10段のスタックすべてに1が積まれる)、 再帰が終わったらその後の処理を 再帰の回数だけ実行、というわけで一つずつ加算して出力」の マクロ定義、保存、そして実行。
マクロだけでは2から始まってしまうので、最初だけマクロ以外と。

加速度的に

遅くなってゆく。

$ time dc -e "1p[1z10000>b+p]sblbx" >/dev/null
 
real	0m0.322s
user	0m0.322s
sys	0m0.000s
 
$ time dc -e "1p[1z20000>b+p]sblbx" >/dev/null
 
real	0m2.119s
user	0m2.119s
sys	0m0.000s
 
$ time dc -e "1p[1z30000>b+p]sblbx" >/dev/null
 
real	0m6.091s
user	0m6.086s
sys	0m0.004s
 
$ time dc -e "1p[1z40000>b+p]sblbx" >/dev/null
 
real	0m12.338s
user	0m12.313s
sys	0m0.024s

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。