aptoro.jp

ずぼら人間のブログ.技術系ブログにしたかった何か

二分探索木

twitterで,二分探索木をどう書くか,という話があったので書いてみた.

#include <iostream>
#include <cstdlib>
#include <ctime>
#include <fstream>

using namespace std;

ofstream ofs("result.csv", ios::app);

int bST(int ans, int min, int max)
{
    int result = (max + min) / 2;
    ofs << "Result," << result << "\n";

    if (result == ans)
    {
        return result;
    }
    else if(result > ans)
    {
        return bST(ans, min, result);
    }
    else
    {
        return bST(ans, result, max);
    }
}

int main()
{
    std::cout << "Start Binary Search Tree.\n";
    
    srand(time(NULL));
    int max = rand();
    int ans = rand() % max;

    ofs << "Answer," << ans << "\n";
    int result = bST(ans, 0, max);

    ofs << "\n";
}

csvに出力して,値の遷移をグラフにしてみた.

f:id:aptorojp:20191214183049p:plain
bst

なんか大学1年生辺りが読む教科書に載ってそうなコードになったけど動いたからヨシ!

twitter

「ループを使わずに1から100を順に出力するコードは書けますか」

という問いを見かけたので考えたのだが
再帰呼び出しを使うコードしか思いつかなかった

#include<iostream>

void showOneToHundred(int x)
{
  if(x > 100) return;
  else std::cout << x++ << std::endl;
  showOneToHundred(x);
}

int main()
{
  showOneToHundred(1);
  return 0;
}

追記
これ書いてから元記事見たら
「ループ,goto,再帰を使わずに」
とあったので失格です.

元記事
How to print 1 to 100 in C++ without a loop, goto or recursion - Quora

お腹の調子がすぐれない

ここ3か月くらい公私共に全くプログラミングをしていない.

欲求は日に日に溜まるものの,取り組む気力が湧かず悶々としている.

モチベーションアップ法的なものがインターネット上には蔓延しているが

あの手のものは良いものでも大抵は掛け算なので,0をいくら掛け算しても0なのである.

emacsが泣いている…

 

グルーヴコースターを始めてから1年半くらいが経った.去年の5月から始めてほぼ毎週ゲーセンに通い多分150kくらい使ったと思う.

レベル14まで開放したところで半年くらい経っているので最近マンネリ感が出ている.

最初14解放した時はGarakura Doll Playがまだ14だった頃で,当時はあの曲で15解放を目論んでいたが,やはりというか,13に降格してしまった.数回のプレイで860k点くらい取れて「14チョロいやんけ!」などと思っていたのでぐぬぬ…となってしまった.

今はTaiko Dram MonsterでSを取ろうとしている.先週ノーミスならS取れる状況で1ミスしてしまい泣いた.音ゲーとはこういうものなのだ…

 

もうすぐ2019年4Qなので,Atomic Heartがリリースである.

支払いをしたのが丁度去年の今頃で,当時の私は何故かFounder's Editionを買っていた.セーフゾーンに名前が載るというのが面白かったからだと思われる.

さっき「本当に支払いしたよな…」と思いgmail内を探したらちゃんとメールがあったので安心した.

ついでにAtomic Heartの公式Discordチャネルへの招待も来ていて参加した.ここで写真と名前を登録したので,忘れていたら危なかった.しかし,メールが来てから3ヶ月くらい経ってるんだけど,ちゃんとゲーム内に表示されてくれるのだろうか.なんにせよ楽しみである.

東京生まれ東京育ち

さっきふと思ったのだが

東京生まれ東京育ち,高校大学も東京の学校を卒業した純正天然東京人って

日本国内で東京以外に住所を持つこととかあるのだろうか.

 

半死半生の大通り商店街とか

人が住まなくなって崩れかけてる廃屋とか

庭でごみを焼いたときの臭いとか

虫と蛙の鳴き声で満たされた蒸し暑い夜とか

新幹線が止まる駅があるだけで少し誇らしげになったりとか

そういうことを実感や実体験として知らずに生きていく人たちも

やはりいるんだろうか.

 

是非を考えているのではなく,そういう人生や世界観を全く想像出来なくて

それが少し楽しいと思った.

虚無の日々を書こうと思ったがゲームの話になった

去年くらいから,帰宅して夕食を済ませたら延々とゲームをする生活をしていた.丁度Nintendo Switchを手に入れた辺りからである.

「プライベートは1秒も無駄にしたくない」みたいな強迫観念からゲームをする手を止められなかった(ゲームをする時間は無駄では?と思ったあなたにはきっと理解出来ない心境だししなくていいと思う).

 

それがここ1週間くらいはそれが無い.延々とtwitterやその他Webサイトを巡回して過ごしている.私はこれを虚無の時間と呼んでいる.

こうやって自身の行動を貶める癖は追々止めていくとして,あれほどゲームに明け暮れていた1年が嘘のように虚無を満喫している.悪くはないがなんだかモヤモヤする.

所謂ネットサーフィンだが,目的もなく惰性でリンクをクリックするそれは実質何もしていないことと同義ではないだろうか.瞬間的で粗雑な快楽をつまみ食いするだけの日々である.

 

そんな日々からおさらばしたいという思いはほとんどなく,多分しばらくはこの澱みのような時間を自宅で過ごすのだろう.だから久々に文章をしたためたくなって今これを書いている.

 

あまり効率とか無駄とか考えて生きるのは得意ではない.むしろ積極的に怠惰に時間を浪費していきたいと思っている方だ.強迫観念からゲームをしている,というのはそれだけ自分にとって病的な1年だったということだ.ただしゲームは純粋に面白いし,この虚無のような時間よりははるかに充実した時を過ごせるのでそこは主張したい.ゲームは面白い.

 

ゲームと言えばずっとスマブラをやっている.2か月ほど足が遠のいていたが最近復活した.戦闘力はめきめき落ちているのでモチベーションを保つのが難しいのが難点である.

足が遠のいていた原因はRPGである.最近2作ほどやった.

丁度1か月前くらいまでやっていたのが「グランディア」という最初SSで出たゲームのアーカイブスである.

www.jp.playstation.com

これのPS版が実家にあって,小学生くらいの時に途中までやったのだがうまくストーリーが追えず飽きてしまっていた.4月の頭くらいにPSストアで見つけて衝動買いした.

The 王道RPGみたいなストーリーだった.一部ボスを除いて特に苦戦することもなくサクサクと進めて1か月くらいでエンディングを見た.マルチエンドではないし,やりこみ要素も無さそうなのでしばらくはもうやらない.

剣と魔法と勇気と友情と愛情といったベッタベタなストーリーだったが大変楽しめた.フィーナかわいいよフィーナ.

 

そしてGWにふらりと立ち寄ったBookoffで買ったのがFF X/XⅡのセットのやつ.

www.jp.square-enix.com

やっぱFFっておもしれえや.これまでドラクエ,FFはつまみ食い程度でしかやってこなくてしっかりプレイするのはこれが初めてだったんだけどさすが天下のFF様や.

濃厚なストーリー,熱くなる戦闘,プレイヤーの心を枯れ枝の如く折にかかるやり込み要素.こういうのでいいんだよこういうので.

今はシンの体内でシーモアを倒した後くらい.あの後の道中で全体石化で2回全滅したので若干萎えている.石化手榴弾を集める日々が若干怠い.

 

そうして私はスマブラに舞い戻ってきた.でもXⅡを早くやりたいからなるべく早くクリアしたい.おあずけにしてる永遠のナギ節とかのムービーも見たい.

 

虚無な感じのエントリにするつもりが普通のゲームの話になってしまった.やはりゲームはいいな.

飲み足りないのでビールを飲んでいる

 

昨日(というか数時間前まで)大学の後輩とお酒を飲んでいた.

その時「先輩のブログは米津玄師のブログと似てる」と言われたので

試しに読んでみたけど良く分からない.

同じ「だ,である」調というだけじゃないだろうか.というかこのブログは「です,ます」調も使ってるので一貫性がない.口調とか一人称が一貫性がない人間なのだ私は.

 

ただ,ちょっとだけ共感出来るところもあった.

reissuerecords.net

音楽に大事なのは編集だと、ここ最近強く思う。プリミティブであれ、衝動的であれ、という「ありのまま主義」というか、そういうのに僕はずっと懐疑的な立場でいて、あまり面白いものでもない気がずっとしていて、自分自身なぜそう思うのだろう?とよく考える。

こんな文章があった.私も趣味で詩を書いてるのだが(趣味で書いてるアマチュアが一端の詩人気取りかと思われるかもしれないが,まあいいではないか.趣味であれアマチュアであれ詩を書いてるだけできっと詩人なのだ),ここでいう「ありのまま」という言葉を私は「言いたいことをただ言っただけ」のものと思って読んでいた.

こういう自分の言いたいこと(特に感情に従って出てきた言葉)というのは生物ではないか,食生活で例えれば生肉なのではないか,というのが私の立場である.あまりにも生々しすぎるのだ.

生肉を食べるだろうか.馬と牛は生食も出来るけど,基本的には焼いた方が美味いし安全だ.特に豚と鳥は焼かないと食べられない.何でもそうだけど,調理した方が安心して美味しく頂ける.

詩であれ音楽であれ,きっと上手に調理してあげないといけないのだと思う.それが編集という作業なのだろう.自分の気持ちとか感情は大事だろう.そうだろうけど,でもそれだけではクリティカル過ぎるし,食したが最後,お腹を下してしまうだろう.

根底というか芯の部分はそういうのは大事だろうけど,誰かに読ませる聴かせる段階になった時に,上手に編集して,詩的に音楽的に形にしてあげないと,それは生々しすぎて鑑賞に堪えないのではないだろうか.

 

そんなことを自分も考えてるな,と上記の記事を読んで思い出したので書き留めた次第です.

 

ところで,「米津」は変換で一発で出るのに「玄師」は出てこないんだな.あれだけ有名になったんだから,IMEのデータベースにも登録されないだろうか.それともIMEクラウドとかには対応してないのかしら.

食物繊維はたまに取ってる

会社の仕出し弁当にたまに千切りキャベツが入っているのでたまに食べる.パッサパサで全然美味しくないのが悩み.それに比べて揚げ物のお店の千切りキャベツはなんであんなに美味いんだろう.無限に食べられそうだ.

あと,友人が一人コーヒーの飲みすぎで便秘になっていたから,便秘の解消にはカフェインの摂取を控えるのも良いかもしれない.飲むのを辞めたらかなり改善されたと言っていた.

 

ところで今期のアニメで「青春ブタ野郎はバニーガールの夢を見ない」を見てる.

その解としては毎晩見ていると言うのが妥当なんだろうか.

 

とても面白い.科学的考察にツッコミを入れるのは野暮だろうし些末な問題だ.

このアニメはざっくり言うと,学校という閉鎖された空間内で発生する強烈な集団心理へのアンチテーゼというところだろうか.アニメ的に言うと空気との闘いの物語.

 

ところで,私語りになってしまうが,私は中高では結構クラスで浮いていた.結構嫌なやつだったし屈折した性根を持ってるからまあそんなものかもしれない.きっと高校のクラスの同窓会の連絡は回ってこないし来ても行くことはないだろう.

当時からあまり良い立場にないことは分かってたし,そういうことに居心地の悪さを感じていた.だから私は古賀の気持ちがよく分かる.私は誰にも嫌われたくないと思う.悲しい生き物だ.一人でいるのはそこまで苦ではないが,一人でいるやつだと思われるのがたまに嫌だ.何より自分で自分をそういう目で見てるのだ.もしかして最低なことなんじゃないかと最近思っている.

 

だから朔太みたいなキャラクターには強い憧れがある.自身に向けられる他人からの視線に対して動じずに飄々としていられる.私も鉄の心臓がほしい.氷菓折木奉太郎とか,ハルヒキョンとかもそうだ.キョンは当時思春期真っ盛りだった私には刺激が強すぎた.隣の芝生が青く見えるせいかもしれない.でも憧れとはそんなものかもしれない.

 

そしてそのせいなのか,朔太のあの強すぎる主張と精神は私にはとても暴力的だ.

作品の中で朔太と話していた双葉がこう言っていた.「正論は聞きたくない」と.私も正論は聞きたくないと十年くらい思い続けている.もちろん双葉の言ってる「正論」が違うものだとは理解しているが,あれを聞いたときもっと広い意味で私は捉えていた.

 

朔太は空気を読んで周りに合わせてばかりなのは馬鹿らしいと言っていた.お説ごもっともだ.そういうのが必要な場面もあるだろうけど,それだけで生活し続けるのは違うというのは承知出来る.完全にアイデンティティを殺して生きていくのは恐らく健全ではない.

 

だが,それが本当に可能だろうか.「空気を読めない」やつがクラス中から爪弾きにあうと分かっていて,現実的にその「空気」に従わないという選択が採れるだろうか.これらは反語ではない.ではないが,極めて反語に近い.少なくとも私が古賀だったら無理だ.断言できる.

本当に「自分を必要としてくれる人が一人いるだけで生きていける」んだろうか.私には全然想像がつかない.私にはそれなりの人数の友人がいるが,そういう今が大変に幸運で,かけがえのない環境だと自覚しているだけに余計にそうだ.仮に自身を心から必要としてくれる誰かがいたとして,自分もその人のことを十分に慕っていて,その人との関わりだけで生きていけるだろうか.その人と四六時中一緒にいるわけではない.学校や会社やその他色々な集団の中で孤立している中で,それでも私とあの人は心が繋がっていると心底思えるものなんだろうか.

 

狼と香辛料のホロは「孤独は死に至る病」だと言っていた.あと,なんて漫画か忘れたが「孤独は人間が感じるストレスの中で最も強い」と言っていた.

人間の生物的特徴として,社会性を獲得して集団で生活することだと何かで読んだことがある.だとしたら,その社会に属せず孤立するということは危険な状態だろう.強い腕力も速い脚もないから,集団で生きることは合理的な生存戦略だ.だから孤独に強いストレスを受けるということは頷ける.そして強いストレスによって死に至る人が世の中にたくさんいることも昨今よくニュースになる.

これらか考えると上述したホロの発言にはかなり信憑性が出てくるのではないだろうか.私はほとんど確信している.死に至る病は元々絶望らしいが,人間が孤独に陥るということはだいぶ絶望的な状況だろうし結末は同じだろう.

 

これらのことはただの理屈の補強ってだけなのだが,こういうことからも朔太の主張はあまりにも正論すぎる.あまりに正論過ぎて一周回って誤論じゃないだろうかとも思ってしまう.人間限界がある.その強すぎる正論にあてられて,私は頭がクラクラしそうだ.

 

もっと正しい言い方をするなら,朔太の主張というより,その主張を通したアニメのテーマやメッセージが暴力的だ.朔太一個人の主張というだけなら,それを自身に向けられているわけではないならそこまで何かを思うことは無いかもしれない.でも明らかに作品のメッセージは視聴者ないし読者に向けられているものだ.

クラスに馴染もうと過度な努力を積んでいることや,馴染めず浮いたクラスメイトでいることに違和感や居心地の悪さを感じている人は,あれを見てどう考えるのだろう.そう感じるからこそあのメッセージを正しいと感じるのではないかと思うし,そう思うとしたらやはり私にはあれは強すぎる主張だと思ってしまう.

 

あまりにも空気を読んで集団に馴染む努力をすることが愚かなことだと言われ過ぎている.あまりにもそうせざるを得ない人の気持ちがおざなりにされている.そう私はずっと考えている.

 

ただ,深夜にアニメを見て2時間もかけてこんな文章を打ち込んでいる私は十分作品を楽しめてるなと思って可笑しくもある.再度言うが,この「青春ブタ野郎はバニーガール先輩の夢を見ない」はとても面白いし,最新話が待てなくて既に5話までを2周しているし,OPもmoraで購入したし,劇場版の前売りも購入予定なのだ.

 

これらの与太話は決して善悪や是非を問いたいわけではない.強い主張をしたいならそうすればいい.さすがにこれを見て死に至る人はいない,と思うし.私は作品鑑賞後にどういう気持ちになるかに善悪など無いと思っている.いい気分になろうが最悪の気分になろうが,そう心を動かされた時点で十分に作品を堪能出来ているし作品の鑑賞とはそういった心の動きを堪能するものでもある.

 

原作は未読なので,今後この主張がどう転がっていくのか,最終的に私がこの考えにどう折り合いをつけるのか,もしくはつけないのかそこのところが楽しみで仕方がない.

 

ところで,劇場版を上映する映画館の情報は無いのだろうか.前売り券の購入を予定としている理由はそれを見つけられないのが原因なのだが...