はてなキーワード: 競技プログラミングとは
「与えられた変数のオーダーに従って、それが許容される計算量のラインのアルゴリズムを探して、それを実装するゲーム」
って理解で合ってる?
難しいところは
・アルゴリズムを探す
・実装する
という認識でいい?計算量がいくら許容されるかは結構すぐわかりそうだし
で最終的には「アルゴリズムを探す」という点に終着する。アルゴリズムがわかれば、実装するというのは比較的簡単だろうしね
この変数のオーダーならO(n^2)でも大丈夫だけど、これはO(logn)のアルゴリズムが必要だ。O(logn)のアルゴリズムで処理したデータはこの程度のオーダーなので......。これを繰り返していく感じ
自分はマジで最初の最初の問題すら実装できないんだけど(AtCoderならABCのA問題すら ChatGPTの解説が必要)
おれは、知的障害病の患者だ。高2の時に発症し、 それから今まで約20年間、ずっと苦しみ続けてきた。
知的障害病の主な症状は、その名のとおり、知能の低下だ。 またそれに付随して、精神状態の悪化、健康の悪化も引き起こす。 恐ろしい病気だ。 真の病名や治療法については、いつか話すことがあるかも知れないが、 約束は出来ない。
知能の低下についていうと、 まずIQを推定で50ほど下げる。 主に障害される能力は、ワーキングメモリーと単純記憶であり、 これは受験的な能力に直結する。 これがおれが大学受験と競技プログラミングで失敗した理由だ。 もちろん、精神と健康の悪化による影響も大きかった。
この病気になった時点で、東大受験は諦めざるを得なかった。 記憶力と計算力がなくなったからだ。 今思うと、 中学から好きでやってた英語は強かったので そこまで悲観することもなかったかも知れないが、 国語で明らかに不利になることを考えると、 断念せざるを得なかった。
おれにはもともと膨大なワーキングメモリがある。 最近では、これが算数のトレーニング法として認知されているようだが、 おれが中学受験の時にやっていたのは、問題を頭の中で解く遊びだ。 なぜこんなことをしていたかというと、囲碁や将棋では頭の中で考えるのに、 算数だけは紙に書いて考えるというのでは、 考えるの意味が矛盾すると考えていたからだ。 最後まで解法を読み切り、それから答案に着手する。 自分でどう考えたかもわからないほどに 一瞬で読み切った時には脳の中に電撃が走るような感覚があり、これが快感であったことを覚えている。
この状況で、 とにかく出来るだけ勉強せずに行ける大学といえば、 東工大か、あるいは京大くらいしかなかった。 それより下の大学に行くくらいならば、死んだ方がましだという考えだった。 韓国にはSKY or dieという考えがあるらしいが、 これを日本に言い換えると東京一工 or dieとなるだろう。 そういえば最近、アジアンドキュメンタリーというところが出してる 「SKYに届け!韓国受験戦争」という映画を見たが、かなり面白かった。 行ったことはないが、韓国は面白い国だと聞く。
ところで、人はなぜ、自身の不幸を感じるのだろう? 残念ながら、知的障害病のおれよりも頭が悪い人間は死ぬほどたくさんいるのだが、 なぜ、彼らは幸せそうなのだろうか? 思うに、人は自身の望まぬ人生を生きなければならないと感じた時、不幸になる。 彼らは生まれてからずっと馬鹿なので、今が馬鹿であっても不幸にならない。 一方でおれは、天才だったものが病気によって馬鹿になったので、不幸になる。 こういう理屈だろう。 この意味で、病気は確実に人を不幸にする。
絶望の中、人生を呪い、親を恨み、何度死のうと思ったことか。 しかし、将来的に治療法が見つかることを信じて、なんとか耐えてきた。 容姿が良い方のため、女性関係を持つこともいくらかはあった。 これには精神的に支えられたと思う。 女にはどうやら、男を支える効果がある。 逆も真なのだろうか。 うまく出来たものだ。
まぁなんとか命からがら京大に入ることは出来て、 その頃には、あるいは京都の気候が少し合ってたのかも知れないが、 多少は自身の病をコントロールする術を覚えた。
わかったことは、どうやらこの病には波があり、良い時もあれば悪い時もある。 自身のスケジュールを柔軟に管理し、 調子が良い時に集中して成果を出せば、 平均的には人並みにすることは出来る。 こういう考えで、今まで生きてきた。 独身や仕事のスタイル含め、おれが完全な自由を好むのは、 そもそもおれが麻布京大スーパーフリーダムガンダムであることも関係するが、 そうでないと自身の生活が破綻してしまうからというのも大きい。
こうした自分の考えもあり、 また相手側の考えもあっただろう。 結婚を逃してきた。
おれは、おれの人生をめちゃくちゃにしたこの病を治す必要がある。 もちろん、外科的手術には何度もトライした。 しかし、すべて失敗した。
明日、おれは最後の戦いに望む。 これで最後にしたいという思いがある。
自信はある。 医学のタイムスパンの中では 比較的新しめの理論に基づく手術であり、 2010年頃から臨床研究報告がいくつか出されているが、 これらのうちめぼしいものは大体目を通し、理屈に関しては大体理解した。 おそらく、ベクトルとしては正しいだろう。
外科手術というのは本当に恐ろしいものだ。 今回は相当な侵襲ダメージが見込まれ、動けない時期がしばらく続くはずだ。 筋トレなども、いつ再開出来るか見込みすら立たない。 手術自体も、事故は常に起こりうる。 静脈穿刺で神経を傷つけて手が麻痺したという事例もあったようだ。 また、全身麻酔中に死ぬこともある。 途中覚醒というのも起こり得る。 もちろん、手技自体にミスがあって後遺症が残ることもある。 ノーリスクの手術はあり得ない。 ブラックジャックですら、手術は賭けだと言っているのだ。
怖いが、やるしかない。やるか、死ぬか。 マックスか、死か。 この考えを持つことが重要だ。
手術は成功する。 おれは知的障害病を克服する。 そしたらやってみたいことがたくさんある。 自身の抑圧されていた頭脳を解放してチャレンジしたいこともある。
もちろん、結婚もしてみたい。 出来るだろうか。 とりあえず、今夜は子供の名前を考えながら 明日に備えてぐっすり眠ろうと思う。
競技プログラミングで、水色とか目指すのはどうだろうか。
30歳からでも全然余裕で立派なプログラマーになれると思うよ。
こういう人もいる
【AtCoder】中卒の主婦が青コーダーになったおはなし【競技プログラミング】
https://qiita.com/mayocorn/items/4edff486428240864808
色については以下を読んでください。
AtCoder(競技プログラミング)の色・ランクと実力評価、問題例
https://chokudai.hatenablog.com/entry/2019/02/11/155904
~~~
緑あれば大抵の企業でアルゴリズム力は十分。AtCoder的には決して上位ではないが、他社評価サイトなら最高評価。
水色だと基礎的なアルゴリズム処理能力については疑いのないレベル。
青以上は一部上場のIT企業でも、一人もいないことが結構あるレベルになる。
~~~
IT 業界は他の業界に比べれば、ひきこもりとかコミュ障にも寛容だと思いますよ。
実家が太いのだから正社員になる必要も無いだろうし、水色とか青になって社員よりもコード書けるスーパー派遣社員とかしてもいいかも。
大学院修士卒のひとをもとめてる企業ってプログラミング能力とか求めているってならわかるけど、
そんなのみんながみんな、もっているわけじゃなく・・いったいなにを求めているのか?
フラスコふって化学反応させれる能力?そんな会社限定的だろ?博士取得者じゃないとそれこそダメでしょう。
営業とか技術セールスとかするにさいし、おそらくそのあたりの経験がないよりはあった方がいいよねみたいなふわっとした
動機で修士卒をやとってんのか。企業側から見たら損じゃないのか?それとも障碍者枠みたいに国家から修士卒を何割以上
採用してねって圧かかってんのか?
大学なんて一流どころいがいは、Toyotaでつかっている最新の機械や装置の操作方法さえおしえておけばいいって
僕は統合失調症の趣味人ニートです。プログラミングを趣味としてやっています。
競技プログラミングの勉強は大変でした。atcoderでレッドコーダーになるまでの一連の勉強の方法について書こうと思います。
実は競技プログラミングを始める前までは、統合失調症ではありませんでした。単なるニートです。
僕は生産的な趣味をネットで探し、DIYは体力を使うから嫌だし、料理は太るから嫌だという理由で、競プロにたどり着いたのです。
最初はgithubで公開されていた練習問題のリストを反復して行いました。
そしてコンテストの日になって、実際にやってみたら3問しか解けず、結果はひどいものでした。
しかし問題自体は、練習問題さえできるレベルであれば解けるものだったのです。
そこで僕は「応用力が足りない」のだと仮説を立て、応用力のためには見たことのない問題に取り組む必要があると考えました。
インターネット上で探すことのできるあらゆる練習問題のリソースを探しました。leetcode, topcoder, project euler等。
しかしどうしても解けない問題をいくら考えても時間の無駄なので、一問10分の制限をつけました。10分経ってしまったら答えを見ます。
こうして新しい問題を解き続けて応用力をつけ、ようやくABCで全問正解するようになりました。
次にARCにチャレンジしたら、僕はすでに応用力が十分身についていて、ARCでも全問正解しました。
それでAGCに参加したのですが、やはり問題が難しくてなかなか太刀打ちできません。
繰り返し参加してみますが、レートもなかなか上がらず苦労していました。
ふと、僕は夢で悪魔が出てきました。
悪魔は僕にこう言いました「俺が問題の解き方を耳で囁いてやる。お前はただその通りに解けばいい。どうだ、交渉するか?」
信じられませんが、それから1ヶ月間は異様な機械音のようなうるさい幻聴を聞き、プログラミングどころではありませんでした。
時々、「お前は罪を犯した!これは罰だ!」という声と共に、鼓膜が破れるような音を聞き続けたのです。
その1ヶ月間は死ぬような思いをしました。病院へ行くと、統合失調症であると言われました。
薬を処方されたら機械音を聞かなくなりましたが、頭があまり働かなくなりました。
しかし、競プロで赤色になりたいので、またコンテストに参加しました。
すると驚くことに、「お前は罪を犯した」と言ってきた時の声が聞こえてきたのです。
僕は頭が働かないので、そのささやきの通りにコードを書き記しました。
そうしたら、なんと見事に全問解くことができて、赤色コーダーになったのです。
僕が初心者にアドバイスするとしたら、悪魔と幻聴の契約をするべきであると勧めます。そして統合失調症になることによって、良い成績を残せるのです。
今日は、英会話スクールに行ってきました。しかしリモートで英会話を学べばいいのに、なぜわざわざ足を運ぶ必要があるでしょうか。
私は仕事もリモートなので、こうでもしないと運動をしないのです。つまり街を歩くという運動としての目的が、英会話スクールに行く理由なのです。
しかし、そうはいってもスクール代が1万円かかるので、節約のために辞めたいと思うことはあります。以前、一度そうやってやめたのですが、やはり家に籠って何もやらなくなってしまったのです。
なにより、人と会話する練習になるというのが最大の利点です。普段はあまり人と会話しないので、会話する機会があると人間不信感が和らぎます。
ただ、体力があまりにもないので、英会話スクールから帰ってくると12時から6時まで寝てしまいます。英語以外に何か有意義な趣味はないものか...と悩みますが、私は社交ダンスというタイプではないので英語ぐらいでちょうどいい気がします。
東京に行けば大人の数学スクールというのがあるらしいですけど、興味はないですね。数学そのものに興味がある場合、スクールというのは独学に比べて非効率なのです。
英語はコミュニケーションが要点ですが、数学はそうではないので、スクールの利点がありません。本当は競技プログラミングとかオンラインチェスとかでバリバリとレートを残したいですけど、32歳にもなると若者の瞬発力に負けてしまいます。
「何者かになろうとする」という自分の行動傾向が存在するのかもしれません。集中できることに取り組んでその分野で名を知られたいとか、そういったことです。
しかしそういう虚栄心は捨てたいという気持ちのほうが強いです。ミニマリストというと語弊があるかもしれませんが、人生を楽しむうえで大切なことを残し、他人と競い合うようなことは無駄なので捨て去りたいのです。
あるユダヤ人Youtuberは、聖書を読み上げ「足るを知る者は富む」という真理について説明していました。私はすでに足りているのに、まだ何かを欲しいと願っているのかもしれませんし、そういう悪い癖は治したいです。
結局、私は「寂しい」のかもしれません。友達がいても寂しく感じてしまうのは、私が何かを言ったときに常に反応が欲しいと思ってしまうからです。
友達も暇ではないので、私に対して常に反応することはないでしょう。だから私は、「フォロワー数を稼ごう」などと、これまた虚栄心に満ちた発想を持ち、反応される確率を気にしてしまうのです。
私には「新規探求性が高い」という自覚があります。つまり、常に「新しい何か」を探しています。
しかし「新しい何か」が見つからないときは非常に鬱憤が溜まります。「2023年の新しいソーシャルメディア」と検索して、確かに新しいかもしれませんが、求めていたものではないのです。
私が迷い、混乱するのはロールモデルの不在のせいかもしれません。様々な人を見てきましたが、有名人や成功者ほど私が失望するような言動・行動をしているのです。
「何かが物足りない、でもそれが何なのかがわからない」これが私の悩みなのです。
手広くやってんだね
英会話に関してはVRChatが金をかけずに喋る機会を増やせるからおすすめしたい
https://www.youtube.com/watch?v=xW8xGjQpnIE
プログラミングは周りだと競技プログラミングをやってる人がちらほら居て、俺はよくわかんねえけどゲームのランクマッチ的な楽しみ方ができるのかも
https://qiita.com/mayocorn/items/4edff486428240864808
個人的にはブラウザの自動操作とか、ちょっと悪い方面に技術を使うと生活の中での実用性が実感できていいかも
上の3つに限らず、なんかどれも惜しい段階で止まってそう