タグ

ブックマーク / memo.sugyan.com (7)

  • N番目の素数を求める - すぎゃーんメモ

    SNSなどで話題になっていたので調べてみたら勉強になったのでメモ。 環境 Pythonでの実装例 例1 例2 例3 エラトステネスの篩 Rustでの実装例 試し割り法 エラトステネスの篩 アトキンの篩 おまけ: GMP Benchmark 高速化のテクニック 上限個数を見積もる Wheel factorization オチ Repository References 環境 手元のMacBook Pro 13-inchの開発機で実験した。 2.8 GHz Intel Core i7 16 GB 2133 MHz LPDDR3 Pythonでの実装例 例1 最も単純に「2以上p未満のすべての数で割ってみて余りが0にならなかったら素数」とする、brute force 的なアプローチ。 import cProfile import io import pstats import sys def m

    N番目の素数を求める - すぎゃーんメモ
  • Advent of Code 2019 に挑戦している - すぎゃーんメモ

    Advent of Code というのがある。 https://adventofcode.com/ 日ではまだあまり 知っている人/やっている人 は多くないかもしれない。検索してみても、日語の紹介記事はこれくらいしか見つからなかった。 Advent of Code の紹介 - Qiita 僕も、去年 元同僚の @ExAdamu に教えてもらうまでは存在すら知らなかった。 どういうものか、っていうのは上に貼った記事でも書かれている通りで、12/1 〜 12/25 まで 毎日1つずつ、プログラミングを使うパズル問題が出題される、というもの。 puzzle input の入力値が与えられ、それに対する回答を自分の書いたコードで計算し、出力値を submitして正解すれば星が貰える。 入力値とそれに対する正解はどうやらユーザごとに異なるものになっているようで、誰かに正解を訊く みたいなものは出

    Advent of Code 2019 に挑戦している - すぎゃーんメモ
    komlow
    komlow 2019/12/24
  • ターミナル操作の記録(ttyrec)からGIFアニメを生成するツールを作った - すぎゃーんメモ

    ttyrec で録画したデータを使ってターミナル上で再生しつつ、そのスクリーンキャプチャを使ってアニメーションGIFを生成するツールをGoで作ってみた。 https://github.com/sugyan/ttygif Releases Mac, Linux Desktopで動作。再生速度はオプションで変更可能。 背景 percolを使ってターミナル操作を早く、便利に。 - すぎゃーんメモ のような記事を書いたりする際に、ターミナル操作を録画してGIFアニメにしたい需要があり。 そういった用途に使える汎用のデスクトップ録画ツールとしてはLICEcapやGifzoなどがある。 Cockos Incorporated | LICEcap http://gifzo.net/ これらはWindows, OSXあたりが対象で、Linuxの場合はまた他のツールがあるらしい(よく知らない)。 汎用的なキ

    ターミナル操作の記録(ttyrec)からGIFアニメを生成するツールを作った - すぎゃーんメモ
  • アイドルさんのブログやTwitterをローカルに保存する - すぎゃーんメモ

    背景 非ドルヲタの方々は知らないと思うけど、世の中にはものすごい数のアイドルが存在しており、毎日どこかで誰かが歌って踊って頑張っている。 笑顔と元気を届けてくれるアイドルちゃんたちはみんな成功して欲しいけど、必ずしもそうなるとは限らない。卒業だったり、病気や怪我だったり、大人の事情だったり、理由は様々だけどもアイドルを辞めてしまう子も残念ながら少なからず居る。 で、アイドルとして活動している上でブログを書いていたりTwitterで呟いていたり子も居るわけだけど、その子がアイドルを辞めたあとも残るとは限らない。人の希望だったり事務所の意向だったりで、アカウントが消されたりするのが普通だと思う。 けど、ファンとしてはその思い出が消えてしまうのは悲しい。大好きなアイドルちゃんと過ごした日々を見返して思い出せるように自分のローカル環境の中にだけでもそれらの情報を保存しておきたい。 結果 …という

    アイドルさんのブログやTwitterをローカルに保存する - すぎゃーんメモ
  • rbenvの切り替えの仕組み…と、他言語での実験 - すぎゃーんメモ

    rbenvを使ってみる - すぎゃーんメモの続き。 現時点でのrbenvのバージョンは0.2.1。 rbenvを使っていると.rbenv-versionファイルの有無でrubyコマンド打ったときに実行されるrubyが違うものになる、というのがちょっと新鮮で、これはどういう仕組みで動いているのだろう?と思って少し調べてみた。 上記記事のようにrbenvの設定をした環境では、 $ which ruby /Users/sugyan/.rbenv/shims/rubyとなり、${RBENV_ROOT}/shims以下のrubyを指すことになる。ここへのPATHは$HOME/.rbenv/libexec/rbenv-initに echo 'export PATH="'${RBENV_ROOT}'/shims:${PATH}"' と書かれているので、eval "$(rbenv init -)"してあれ

    rbenvの切り替えの仕組み…と、他言語での実験 - すぎゃーんメモ
  • tmuxを使い始めてみた - すぎゃーんメモ

    名前と存在は知っていたけど最近まで使ったことのなかった、tmux。 http://tmux.sourceforge.net/ ようやく触ってみた(現在の最新版:1.6)のでscreenとの比較、思ったことなど。 現在の自分の設定 # prefix key unbind C-b set-option -g prefix C-t # key bind bind-key C-n next-window bind-key C-p previous-window # terminal set-option -g default-terminal xterm-256color https://github.com/sugyan/dotfiles/blob/master/.tmux.conf 主にはコレくらい。エスケープキーはデフォルトの"C-b"から"C-t"に。windowの行き来はCtrlキー押し

    tmuxを使い始めてみた - すぎゃーんメモ
  • MySQLのコマンドたち - すぎゃーんメモ

    http://mysql-casual.org/2011/11/mysql-casual-advent-calendar-2011.html の6日目の記事として書かせていただきます、sugyanです。 勢いで参加表明してしまい、今日慌てて久しぶりにMySQLを触りました。 MySQLでFizzBuzz ストアドプロシージャって使ったこと無かったので初めて触ってみました。 DROP PROCEDURE IF EXISTS FizzBuzz; delimiter // CREATE PROCEDURE FizzBuzz(n INT) BEGIN DECLARE i INT DEFAULT 1; WHILE i <= n DO SELECT CASE WHEN i % 3 = 0 AND i % 5 = 0 THEN 'FizzBuzz' WHEN i % 5 = 0 THEN 'Buzz'

    MySQLのコマンドたち - すぎゃーんメモ
  • 1