もっと気持よくyukicoderで遊ぶためにテストケースを自動実行する。

solorab.net このブログを読んだんですが、謎の呪文が1行だけ貼ってあって????ってなりました。 テストケースは自動で確かめる ちょうどTwitterでも強い人はテストケースを自動実行しているようだということを見ていたので、自分もオシャレに自動でテス…

素数は通れませんの裏話

Advent Calendar Contest Advent Calendar(以下ACCAC) 2015でNo.308 素数は通れません - yukicoderを出題させていただきました。 www.adventar.org 自分はyukicoderの★3を解くのにヒーヒー言う僕が、ACCACの初日に★4の問題を作れてしまったので、 作るときに…

そのミスはどう処理しましょうか?

この記事は、Board Game Design Advent Calendar 2015の10日目の記事ですが、26日目に書かれました。 僕は週に8時間ほどボードゲームで遊びます。 ボードゲームで遊ぶのは楽しいです。 もう一回もう一回と夜通し遊んでしまうことも多々あります。 遊ぶだけの…

シフトを自動で組むプログラムをPythonで書いた

アルバイトのシフトを組むのって大変らしいですね。 調べてみると「ナーススケジューリング問題はNP困難」などと出てきます。 ただ、頭のなかで考えていた問題は労働者ごとの職能に差がないものだったので、ナーススケジューリング問題よりは簡単かもしれな…

paizaのプログラミングで彼女を作るやつを全クリアした

paiza.jp 彼女欲しいって言ってたら友達にオヌヌメされたので解いた。全体的に制約が超ゆるいので何でも通っちゃう。 一応水着も手に入れたけど、僕がほしいのは生身の彼女なんだ! 「めがね」ゲットチャレンジ! 本当にやるだけ。制約が小さいので全部見れ…

普段競技プログラミングばっかりやってる僕がSiv3Dを触ってみた話

C++

この記事はSiv3D Advent Calendar 2015 - Qiitaの14日目の記事です。 普段はプログラミングといえば競技プログラミングというレベルで競技プログラミング大好きな僕のSiv3D体験記です。 Siv3Dとは Siv3D は C++ で楽しく簡単にゲームやメディアアートを作れ…

SymPyで辛い計算をちょっと辛い計算にする

この記事はPython Advent Calendar 2015 - Adventarの7日目の記事です。 SymPyというシンボル計算ライブラリを使ったことがありますか? 最近、卒論のお手伝いをしてもらっているライブラリです。 日本語の情報が少なくて困ったので自分用にという意味も込め…

Brainfuckの処理を書いてみた

Brainfuckとは Brainfuck - Wikipedia 命令が8個(><+-.,[])しかないプログラミング言語 def brainfuck(s): a = [0] * 10 ptr = 0 i = 0 l = len(s) while i < l: if s[i] == '>': ptr += 1 elif s[i] == '<': ptr -= 1 elif s[i] == '+': a[ptr] += 1 elif s…

スペース区切りの文字列をリストに格納する方法の比較

競技プログラミングの入力では、一行にいくつかの数字がスペース区切りで並んでいるケースをよくみる。 例えば、No.16 累乗の加算 - yukicoderの Python3でこれらを一つのリストに格納したい時、一番早い方法はなんだろうか。 map関数を使ってからlistにする…

川渡りパズルを解く

川渡りパズル(男が狼、ヤギ、キャベツを持って川を渡るが船には1つしか積めないみたいなやつ)をPython3で解いてみました。

ABC#027の感想

すっかり存在を忘れていて残り時間30分からの挑戦。 Cの解法は解説読んでも釈然としません。 http://abc027.contest.atcoder.jp/ A: 長方形 - AtCoder Beginner Contest 027 | AtCoder a,b,c = [int(x) for x in input().split()] if b==c: print(a) elif c=…

python3で最大スタック回数の変更

深さ優先探索を書いていたら、おそらく再帰呼び出し回数の上限が原因っぽいrun time errorが発生したので、 最大の再帰呼び出し数を変更する方法を調べた。 import sys sys.setrecursionlimit(10000) 28.1. sys — システムパラメータと関数 — Python 3.3.6 …

多次元std::vectorの初期化(C++11)

C++

C++11だとstd::vectorの初期化は一行で書ける。 std::vector<int> 変数名(要素数, 何で埋めるのか); #include <iostream> #include <vector> int main(){ int k = 3; int count = 0; std::vector<std::vector<int>> vv(k, std::vector<int>(k, 1)); for(auto v: vv){ for(auto t: v){ count += t; std::cou</int></std::vector<int></vector></iostream></int>…

複数のフォルダの中に入っている画像ファイルを一つのフォルダにコピーする

やること 複数のフォルダの中に入っている画像ファイルを一つのフォルダにコピーする。 なぜやることになったのか サークルのホームページのデータが1画像ファイルごとに別のフォルダに保存されていて、手動で管理するのが非常に不便だったため。 解決方法 o…

pythonで基数変換する

基数変換するコードを書いてみた。 def radix_convert(number, radix): s = [] while number>0: s.append(number%radix) number = number//radix return s[::-1] print(radix_convert(13,2)) print(radix_convert(15,2)) で実行すると [1, 1, 0, 1] [1, 1, 1,…

手書きのメールアドレスが読み間違えていた時に候補を出力してくれるコードを書いた。[python]

手書きのメールアドレスが読み間違えていた時に候補を出力してくれるコードを書いた。 毎年新歓でメールアドレス書いてもらってもaとuとか判読できなくて、メールが送れない子がいる。 貴重な出会いを無駄にしてしまうのはもったいない! =>読み間違えそうな…