goo blog サービス終了のお知らせ 

パーソナルブログメモリ

a = [1, 1]
for _ in "*" * 999: a += [sum(a[-2:])]
print(a)

大学一般教養プログラム講座相当のプログラムの解説

2020-03-05 | プログラムをマスター計画2020
少なくとも平成の初期頃に受けていた一般教養の課題よりは難しいです   ヒットアンドブロウ(hit&blow)というゲームの簡単な解法例です CodinGameというサイトのゲームを利用しています トップからCOMPETE > OPTIMIZATION > Bulls and Cows 2 同じ数字のない数列を出題者が考え、解答者が推測するゲームです ま . . . 本文を読む

C#の配列とソートに はまった話

2020-01-31 | プログラムをマスター計画2020
月曜の丑三つ時にまたソースバトルに挑んでみました。   今回はC#  準備を少ししてます。(JavaScriptの問題の時にネットでググった言語のちょっとした変換などを事前調査)   配列とソートもう少し下調べしておくべきでした。   参考になりそうな問題と 他の人の解答、Python3で解いたものを残しておきます。   問題  スペ . . . 本文を読む

2行でPythonマスター

2019-11-15 | プログラムをマスター計画2020
次の2行のプログラムをみて、意味が理解できるなら、あなたは中級者以上です。   <プログラム>   <問題> 3つの文字列の単語の数が5,7,5ならHAIKUと答える問題を解くプログラムです。 単語のセパレータはハイフンかスペース、単語にアルファベットが必ず入ります。 [問題 CodinGame HAIKU DETECTORより]   < . . . 本文を読む

Pythonでラグビーのようなゲームのアルゴリズム解説

2019-11-08 | プログラムをマスター計画2020
お互いに白黒の駒を2列ならべる。 自分の駒は前と斜め前に空白があれば進められ一手ずつ動かせる。 斜め前はさらに相手の駒があったら取って進めることができる。 相手の一列目に先に入ったほうが勝ち。   ルールを把握した時、少しラグビーのルールに似ていると感じました。   相手の手が渡され、それに対してこちらの手を返すプログラムを作成しています。 最初に作成したのがこ . . . 本文を読む

巨大な素数 5761456番目を作ってみる

2019-10-30 | プログラムをマスター計画2020
素数には不思議な魅力があるらしく 度々、素数を作らされる。最新の値を発見すると賞金もでるらしい。   昨日の素数の問題を解いていて巨大な素数つくれるのではないかと作ってみました。 1万まではあっという間なのですが、1万から1億までの計算だといつ終わるのか サッパリわからないので100000番目ごとに値と計算時間を表示させています。 1億から1京だと素数の計算テーブル数も575 . . . 本文を読む

プログラム言語は簡単なところから

2019-10-30 | プログラムをマスター計画2020
プログラムがわからない時はとにかく1つずつ簡単なものを何度も何度もためしていくと 少しずつ少しずつ道が開けていきコツを掴んでいきます。   わからないほど簡単なものから確認です。   失敗はすればするだけ後から役に立ちます。 同じ間違いを何度してもいいです。 何度もするというのはその言語の方にも問題があるかも知れません。     &nbs . . . 本文を読む

15パズルに挑戦

2019-10-15 | プログラムをマスター計画2020
CodinGameからパズルのお知らせがあったので挑戦してみます。   15パズルのアルゴリズムはまったく作ったことがありませんでしたが、 その縮小版のパズルがあったので始めて作ってみました。 最短手数を探して、その手を動かすパネルの位置を横、縦の位置の順で一手ずつ表示します。 スライドは1つずつです。問題はあらかじめ最短手数を決まっている盤面を提示されるようです。 A* . . . 本文を読む

TypeScript3日目 囲碁クエストの棋譜データから終局時の盤面を作成

2019-10-10 | プログラムをマスター計画2020
石の上にも3日ぐらい ということで、 以前Pythonで作成してgoに移植したものをさらにTypeScriptに移植してみました。 囲碁クエストの棋譜データから終局時の盤面を作成 go言語初心者が挑む(棋譜データから終局の盤面を作成、言語のポイント解説付き)   一番はまったのは16行目 let koma=board[p];だとundefinedという謎の値が入っていたのが原 . . . 本文を読む

TypeScriptを学習開始1日で、その言語で世界2位になる話

2019-10-08 | プログラムをマスター計画2020
TypeScriptなかなかすごいではないかと思ったのもつかの間、 エラーメッセージとかも初見のものばかりでバグ取りが大変。 Python3の198ステップほどのプログラムの移植にまる一日かかってもまだ完全実装できてません。     TypeScriptを始めたきっかけはPython3の原作者がTypeScriptをかなり参考にしたという記事を見かけて 何?と思って . . . 本文を読む

TypeScriptで配列を使う(定義、追加、取得、削除、長さ、ソート、ループ)

2019-10-07 | プログラムをマスター計画2020
TypeScriptで配列を扱うサンプルがみつからなかったので作ってみました。 JavaScriptのサイトを参考にしています。(JavaScriptでもそのまま動きました)   実行環境 ブラウザでCodinGameのサイトを利用しています。 node: 10.15.3 typescript: 3.5.2(おそらく)   実行結果   テ . . . 本文を読む

go言語初心者が挑む(棋譜データから終局の盤面を作成、言語のポイント解説付き)

2019-09-30 | プログラムをマスター計画2020
数日前にPython3で作成したものの移植  囲碁クエストの棋譜データから終局時の盤面を作成   一番悩んだのは文字列のn番目を取るためにs[n]とするとその場合バイトコードに変更されてしまうところ (s[n:n+1]とスライスで取るとその一文字が取れます) ループからのbreakはgotoを使いました。 あとはイテレータをループでまわすときにindexもついてくる . . . 本文を読む

ミニプログラムの解説(6)

2019-09-05 | プログラムをマスター計画2020
6回目なのでノーヒント その代わりプログラムは100点のもの限定です。 なんとなく見積もってみました。 ここまで6回のミニプログラムの制作費は安く見積もって10万円ぐらいです。(一企業に提供する場合) テストケース、仕様があらかじめできているためで、そうでない場合は60万ぐらいにはなりそうです。 全120本として1日6本として20日 ちょうど1人日です。 ちょっと見積もり期間が . . . 本文を読む