paizaオンラインハッカソン lite をPythonで解いてみた.
結果 は0.01秒.
単純に枝刈りしながら深さ優先探索するだけのコードだけど, あらかじめ単価の安い順にソートしておくのと, Solver.least_cost() あたりの処理とで出来るかぎり浅いところで枝刈りされるようにしている.
とはいえ、このコードで TestCase7が0.01秒というのはちょっと速すぎる気がしないでもない.
# -*- coding:utf-8 -*-| scriptencoding utf-8 | |
| setlocal fileencoding=cp932 | |
| " カーソル下のファイルに対するdiffをvimdiffで表示 | |
| nnoremap ;d :call ShowHgDiffUnified(expand('<cfile>'))<CR> | |
| function! ShowHgDiffSideBySide(path) abort | |
| execute 'tabedit ' . a:path | |
| let encoding = &encoding |
| package main | |
| import ( | |
| "encoding/base64" | |
| "flag" | |
| "fmt" | |
| "io" | |
| "log" | |
| "net" | |
| "net/http" |
paizaオンラインハッカソン lite をPythonで解いてみた.
結果 は0.01秒.
単純に枝刈りしながら深さ優先探索するだけのコードだけど, あらかじめ単価の安い順にソートしておくのと, Solver.least_cost() あたりの処理とで出来るかぎり浅いところで枝刈りされるようにしている.
とはいえ、このコードで TestCase7が0.01秒というのはちょっと速すぎる気がしないでもない.
# -*- coding:utf-8 -*-元ネタ: 複数ルートなブランチの全ての差分の取得
のWindows版
@rem コマンドプロンプトなどで直接実行する場合は%%i, %%j を %i, %j に変えること
@rem 対象のブランチ名
set BRANCH=feature| using System; | |
| using System.Collections.Generic; | |
| using System.Linq; | |
| using System.Text; | |
| using System.Reflection; | |
| using System.Linq.Expressions; | |
| using System.Diagnostics; | |
| namespace WonderfulPanda.Gists | |
| { |
| namespace WonderfulPanda.Gist | |
| { | |
| public class EventSourceSample | |
| { | |
| WeakEvent<EventArgs> _test = new WeakEvent<EventArgs>(); | |
| public event Test | |
| { | |
| add { _test.AddHandler(value); } | |
| remove { _test.RemoveHandler(value); } | |
| } |
| if !exists('s:loaded') | |
| let g:sphinx_image_dirnames = ['images', 'figures', '_static'] | |
| let g:sphinx_image_ext = 'png' | |
| let g:sphinx_image_dir_search_depth = 5 | |
| endif | |
| " Sphinxの環境に関する情報 | |
| let s:context = { | |
| \ 'filepath': '', | |
| \ 'root': '', |
| # 指定したリビジョンの子孫をまとめて指定リビジョンを含むブランチのHEADにrebaseする。 | |
| # 主な用途は、手元で生やしまくったfeatureブランチ共をupstreamから取ってきた新しいHEADにまとめて引っ越すとか | |
| [alias] | |
| follow = !for /F "usebackq" %i in (`"%HG%" log -r $1 --template {branch}`) do ("%HG%" rebase -r "($1):: & !public() - ::'%i' - '%i'::" -d %i --keepbranches) |
| http://paiza.jp/poh/ec-campaign/result/52532b7720a4e3584cb188e26a8a2ec1 | |
| pythonで0.08/0.11/0.45 | |
| 1回の計算で何度もbisectかけるのは遅いかと思ったけど、bisectの範囲を狭めていけるのでそれほどでもでもなかった。 | |
| ※コピペした時に一か所インデントが狂ってしまっていて動かなくなっていたので、修正した。 |
| # -*- coding:utf8 -*- | |
| # 平成変換 | |
| # https://codeiq.jp/challenge.php?challenge_id=466 | |
| # 実行には Python 3.2以降が必要です | |
| import math | |
| import re | |
| from collections import namedtuple | |
| def memoize(f): |