algorithm

ローラーコースターでいくら稼げるか

タイトルで釣られた人はごめんなさい。プログラミングのアルゴリズムの話題です。最後の30分ぐらいしか出れなかったけれど、http://community.appliplanet.co.jp/groups/google-code-jam-2011-%E5%8B%89%E5%BC%B7%E4%BC%9A/blog/2011/04/06/%E3%82%B0%E3%83%…

時間帯重複チェックのお題を解いてみた

ある二つの時間帯(日をまたがない)が重複しているかどうかをチェックする処理を書いて下さい。 時間帯は4つの整数値(開始時,開始分,終了時,終了分)により与えられます。例1) 午前1時から午前5時30分まで (1, 0, 5, 30)例2) 午前9時から午後23時まで (9, 0, 2…

文字列を適当な長さで区切って diff を表示する

Python の標準ライブラリに difflib というものがあります。これを使うと、いろいろなフォーマットの diff を表示できます。ちょっと使ってみたいだけなら difflib – シーケンスを比較する - Python Module of the Week のチュートリアルを見てみると分かり…

"An O(NP) Sequence Comparison Algorithm" with Python の添削

元ネタ: "An O(NP) Sequence Comparison Algorithm" with Python - 考える人、コードを書く人おとなり日記をたまたま見たところ、面白そうな内容でしたので添削してみました。 ドキュメンテーション文字列をクラスの中に入れました クラス名を Python コード…

素数を求めるアルゴリズム -エラトステネスの篩(ふるい)-

呼称: エラトステネスの篩(ふるい) 目的: 素数を求める 特徴: enumerate() を使うと便利ですアルゴリズムそのものとは全然関係ないのですが、お仕事でエラトステネスさんに由来する名前に関わっているので、実装してみました(^ ^;;アルゴリズムの解説を Pyth…

珠玉のプログラミングのお題を python で書いてみた : 5

#!/bin/env python """ 3.3 a variety of array sample(P34) date calculate function """ from datetime import * def search_date(basis, days): return basis + timedelta(days - 1) if __name__ == '__main__': d = date(2004,1,1) print search_date(d,…

珠玉のプログラミングのお題を python で書いてみた : 4

#!/bin/env python """ 2.4 the sort to summarize(P18-21) Problem C anagram : posts stop tops """ # global DIC = ['pans','pots','opt','snap','stop','tops'] def main(): print "Dictionary : ", DIC d = {} for i in DIC: sgrp = sign(i) if d.has_k…

珠玉のプログラミングのお題を python で書いてみた : 3

#!/bin/env python """ 2.3 the loop/combination of basic procedure(P16-18) Problem B turning over : rotdist=3, "abcdefgh" -> "defghabc" Solution 1 """ # global DATA = ['a','b','c','d','e','f','g','h'] ROTDIST = 3 LENGTH = len(DATA) def main…

珠玉のプログラミングのお題を python で書いてみた : 2

#!/bin/env python """ 2.2 the binary search in everywhere(P13-15) Problem A finding the lack of integer """ import random # global ERROR = -1 max_num = 10 element_num = 9 max_digit = 8 def main(): # input data input_data = random.sample(xr…

珠玉のプログラミングのお題を python で書いてみた : 1

#!/bin/env python """ 1.4 The sketch of code(P6-7) That's a sort program using bitmap. """ import random def main(): # input data input_data = random.sample(xrange(0,99), 10) print "input : " + str(input_data) # initialize bitmap = [0 for …