Pongeponge

プログラミング

Codingame『Mayan Calculation』クリア

Image from page 128 of "Biologia Centrali-Americana, or, Contributions to the knowledge of the fauna and flora of Mexico and Central America" (1889) / Internet Archive Book Images マヤ文明では数は20進法だったらしい。 掛け算を憶える小学生は…

Codingame『The Gift』クリア

IMGP7062 / 丹波写眞 Tamba photo ギフトがどうとか、予算がどうとか、寄付金の最大金額が小さくなるようにとか。 それって簡単に言えば年貢でしょ? www.codingame.com

Codingame『Scrabble』クリア

Scrabble / DavidMartynHunt Scrabbleのルール?フフン!英語が読めないからサッパリわかりませんね!

Codingame『Bender, a depressed robot』クリア

21世紀美術館@石川県金沢市 / *sii 永遠のループに陥るか、それとも自殺するかの救われないストーリーである。

Codingame『Bender, a depressed robot』訳

ぶっちゃけ英語ではルールがよくわからんので適当に頑張って和訳してみる。 新しいベンダーシステムは9つのルールに従う: The 9 rules of the new Bender system: 1.マップの@からスタートしてSOUTHに行く。 1.Bender starts from the place indicated by t…

Codingame『Dwarfs standing on the shoulders of giants』クリア

Shingeki no Kyojin / Xubaet ドワーフが巨人の肩に乗って……何? ブログ書く直前までインフルエンザの話かと思ってたけど違うの?*1 www.codingame.com *1:英語が非常に弱い

Codingame『Telephone Numbers』クリア

レトロ モシモシ / pika1935 「電話番号の要素を求める」っぽい事を英語でのたまっておられるようですが、よくわからん。 例えて言うならツリーの枝の長さを求めるみたいな……。 やればわかる。多分! www.codingame.com

Codingame『Conway Sequence』クリア

Sequence / LordFerguson 何かもっといいやり方がありそうな、なさそうな。

Codingame『Network Cabling』クリア

Cables / Nika 平均を求めてもうまくいかないので、中央値を求めたら通った。 めっちゃくちゃ悩んだわ!!

動的計画法のテスト

会場案内計画 / rch850 フィボナッチ数列で動的計画法の威力を見てみた。*1 *1:動的計画法 - Wikipedia

Codingame『Bender - The Money Machine』クリア

Bender / José Carlos Cortizo Pérez 普通に再帰で全探索したら時間が足りなくてアウト。 そこで初めて動的計画法を考えてみた。 動的計画法 - Wikipedia いやぁ凄いね。スイスイですよ、スイスイ。 かかる時間が雲泥の差。 それでもイマイチ理解しきれてな…

あっ、歩数制限つけなきゃ(間違い)

Paizaの『S002:最短距離を測る』をやったけど、しょうもないミスしてランクD……平均より20分早くできたのに、何であんな余計な制限をわざわざつけたのか*1。 Codingameと比べて一発コッキリの印象が強いので、もうちょっとテストケースを用意して欲しいです。…

見てるだけライフゲーム

Processing.jsを使ってサイトに載せてみるテスト。 ルール決定→20世代まで世代交代→ルール変更→20世代まで…のループ。 個人的には見てるだけで満足感を得られる。

ライフゲームの分類

唐突に2Dライフゲームのルールを分類してみようとかトチ狂ったこと思いついたので、 ルールを変えつつ20世代目を全出力してみた。 結果:19683ファイル生成(pngファイル) そのうち半分くらいは変化無かったり他のルールと同じ結果だったり。 重複するものを…

『Unity5とC#で作るライフゲーム』できた

物自体は12月の半ばにはできてたけど、 祖母の介護やら何やらでバタバタしててすっかり忘れてた。 というわけで新刊できました。 通常通りコミケ価格の500円ポッキリ。 次は何作ろうかな。Unity5とC#で作るライフゲーム: UnityとC#で作ってみようシリーズ3発…

TypeScript始めました

Visual Studio Code入れて、 node package master入れて、 node.js入れて、 microsoftのファーストステップガイドみたいなのを参考にしてやってたら 途中でハマった……。 あと、JavaScript界隈というかWeb系まわりは、 「アレ使ってコレ使って、ソレ使ってど…

0,1の繰り返しと%を使わない余りの出し方

0,1,0,1,0,1,0,1,……と繰り返す方法 XORを使う。 for(int i = 0; (終了条件); i ^= 1) { (処理) } こう書けば i は1と0を繰り返す。 単純だけどさっぱり思いつかなかった。 %を使わない余りの出し方 例えば10/3の余りは1。 int i = 10 % 3; と書くと i に余り…

Unity5とC#で作る内サイクロイド 出版完了

シリーズ2冊目できたー。 イルカを描こうと思ったらサメっぽくなったのでサメで。 やっぱりある程度のひな型や書き方を確定させると、格段に書きやすい。 著作・編集 記号について 1 内サイクロイドを作り始めよう 1.1 新しいプロジェクトを作る 1.2 フォル…

KDPで出版 三冊目

三冊目を出しました。Unity初心者向け本です。 いつも通りコミケ価格の500円。 外サイクロイドを作るまで載せてます。 こういうのって英語版も作った方がいいんだろうか。 英語壊滅的に苦手だけど。 なんかかっこいい表紙にしようとした結果こうなりました(´…

Codingame『Indiana - Level 1』

インディアンなジョーンズが洞窟を底へと滑り落ちていく。 滑り落ちていく方向を制御して、奈落へ叩き込もう!(助けない) リプレイはこんな感じ

Codingame『Stock Exchange Losses』

Black Monday (1987) 黑色星期一 / kingrahsu 「証券取引の損失」というわけで、上の写真はブラックマンデーの写真です。 問題の内容は、株価グラフ内で、最大どれくらいの損が出るかを調べる問題。 最初は普通に2重for文で作ったものの、即タイムアウト。 1…

Codingame『Skynet: the Virus』LEVEL 1のAmbush取れた

pongeponge.hatenablog.jp 結構昔にやったあと、トロフィーをどうすれば取れるか考えてた。 取れてなかったトロフィーはこれ。 Ambush Finish the 4th test of the "Skynet: the virus" puzzle with 50 or more remaining links and get a 100% score. Ambus…

Codingame『Bender - Algorithmic Complexity』

気が変わって難易度:ハードの一番下にある問題をやってみた。 データの説明に最も適する近似曲線は何ですか?という問題。 自分で作ってて思ったけど、超クソコードです。テストは通ったんですけどね。 どうしたらもっと綺麗に書けるんだろうなぁ……。 一回…

Codingame『The Paranoid Android』

自身の体を張って仲間の進行を妨害する、設計者の顔が見てみたいロボをゴールへ導く。 右移動左移動を直接指定できれば簡単なのに…と思わなくもない。 情報を仔細に得てるのに、有効に使った感じゼロ! Test case 07 のリプレイ画面はここから

Codingame『APU: Init Phase』

ルールがよくわからなくて、めちゃくちゃ時間かかった。 隣接ノードを探すんじゃなくて、離れていても右にあるノード、下にあるノードを探す。 それが分からずに「なんでやー、なんでやー」と頭抱えてた。 英語読めないのが悪いといえばそうなんだけどね。

WebPlayerとサイトの連携

「Unity内で綺麗な数式が表示できないなら、Unity外で表示すればいいじゃない!」 と思いつき、調べてみたら方法はあった。 ただ、Javascriptなんて(避けては通れないとはいえ)ほとんど使ったことないよ!*1 *1:使うことがないから、未だにAjaxとかjQueryと…

足し算小3くらい

pongeponge.hatenablog.jp ゲームしながらポチポチやってたら何とか形になってきた。 そして新しい問題もわかってきた。

シーザー暗号(Caesar cipher)作ってみた

シーザー暗号作ってみました。 twitter投稿機能も付けてみたけど、ちゃんと動くといいな……。

コラッツ問題シミュレーター

3n+1問題もしくはコラッツ問題 - Pongepongepongeponge.hatenablog.jp コラッツ問題を気軽にできるように、Unityで作ってみた。 バグ多いけどね……。こういうのってシミュレーターに入るんだろうか? リゾルバーのほうがいいんだろうか?

チェスの移動

チェス駒をアセットストアからダウンロードして動かしてみた。

Unityで騎士巡回問題

といってもC#のアレを移植しただけですが。騎士巡回問題 - Pongepongepongeponge.hatenablog.jp 騎士巡回問題ソースコード - Pongepongepongeponge.hatenablog.jp

騎士巡回問題ソースコード

コードがごちゃっとしてて分かりにくかったので、できる範囲で分かり易く改善してみた。 system.drawingのPointは演算子に対応してないから手作り。 たぶんきっとちょっとは見やすくなったはず。

騎士巡回問題

騎士巡回問題とかいうのがある。 簡単に言うと、 『チェスのナイトが、盤面の全てのマスを踏んで元の位置に戻る』ルートを探せ という問題。

ローレンツアトラクタ シミュレータ作った

Unityちゃんのアセットを落としたけど、アニメーションをどう触っていいのかいまいち理解できないので、かわりにローレンツアトラクタのシミュレータを作ってみた。

外サイクロイドシミュレータ

外サイクロイドシミュレータを作ってみました。

Unityで画面遷移

Unityで画面遷移やってみた。

リサージュ図形

リサジュー図形作ってみた。

永遠に足し算するunity

unityで足し算作ろうとしてまだ途中。 今の所延々と足し算し続けるメカになってる。

3次元ライフゲーム

ついでのついでに3次元バージョンも作ってみた。 ……が、パラメータの設定が微妙過ぎて何とも言えない。 (処理が激しく重いので注意!)

1次元ライフゲーム

せっかくなので1次元バージョン作ってみた。

ライフゲーム2

やったーできたー(棒) やっぱり条件間違ってた。

ライフゲーム

Unityでライフゲーム作ってみたけど、生成・消滅条件が間違ってるのか変な動きしてる。 よって公開はしない。 ライフゲーム作ろうと思う ↓ うにてぃにしよう ↓ プレファブ便利 ↓ 色の付け方 ↓ コルーチン死亡で超高速ライフゲーム化 ↓ めんどくせ ↓ 5.0.2fに…

アーマードコア風モード

アーマードコアの動き

さっきはバイオ風の動きを作ったので、次はアーマードコア風。

バイオの動き

Unityでバイオハザードの動きを真似てみようと思った。

Codingame『Hostage Rescue - Part 1 - Training』

バットマンがピョンピョンしながら爆弾を探すゲーム。 あぁ^~バットマンがぴょんぴょんするんじゃぁ^~ 1マスずつ動いてたら到底間に合わないので、移動可能範囲を1/2にしながら動く。 動いてるのはこんな感じになる。 http://www.codingame.com/replay/sol…

Codingame『Skynet Finale - Level 1 - Training』

エージェントをゲートウェイに行かせない、 または、スミスをネオの所に行かせない、 もしくは、三蔵法師を天竺に行かせない、そんなふうにするゲーム だいたい動いてるのはこんな感じ http://www.codingame.com/replay/solo/25830233 using System; using S…

Codingame『Racing Horses』

強さの近い馬のstrの差を求める。 EASYのラストだけど、めっちゃ簡単じゃない? using System; using System.Linq; using System.IO; using System.Text; using System.Collections; using System.Collections.Generic; /** * Auto-generated code below aim…

Codingame『Defibrillators』

犠牲者の心臓に電気ショックを与えるために最寄りのAEDを探し出すゲーム(たぶん) 小数点がピリオド(.)じゃなくてコンマ(,)になってるのは罠か。 何も知らずにdouble.Parseして計算したら地球何十周レベルの長大な距離になって、患者死ぬやろ…って思ったわ。 …

Codingame『CG Maroc - MIME type』

MIMEっていう聞いたことがある(しかし理解してない)ものをどうこうして(?)ファイルタイプを調べるゲーム。 ファイル名 → 拡張子get → 拡張子からMIMEget という流れ。 ちなみにHashtableを初めて使った。 ArrayとListとArraylistがあれば十分だと思ってた。…