読者です 読者をやめる 読者になる 読者になる

ichirin2501's diary

いっちりーん。

雑にブログを書く方法

|'-') こうですか!

MySQL-5.6のMRRにデッドロック回避の夢を見る

この記事は、はてなエンジニアアドベントカレンダー2016の7日目の記事です。 昨日は id:haya14busa さんのSum/Union/Variant Type in Go and Static Check Tool of switch-case handlingでした。こんにちは、ドラゴンボールのヤムチャ状態になってるichirin2…

MySQLでINSERTのデッドロックに嵌る人を1人でも減らすために

この記事ははてなデベロッパーアドベントカレンダー2015の12月24日の記事です。 昨日は id:stefafafan さんのエンジニアと英語でした。こんにちは、こんばんは。 クリスマス・イヴですね、皆さんはどのような一日を過ごされる(た)のでしょうか。 僕は一人で…

挿入と参照ロックに疲れ果てた俺たちは

なかったらINSERTしたいし、あるならロック取りたいやん? from ichirin2501 www.slideshare.net 出来事 @ichirin2501 とりあえず何も考えずこの前のロックの話をSlideshareにあげてくれ!!— 柴崎優季 (@shiba_yu36) 2015, 8月 22 はじめに これは先日の社内…

InnoDBのロックについてのメモ書き

https://github.com/ichirin2501/doc/blob/master/innodb.mdメモ書きがたまってきたのでgithubで管理することにしました。 当時の気分によって文体がばらばらですが、適度に修正していきます。

「外部キー Night」に参加してきた

発表者として参加させていただきました。発表資料はこちらです(自分でも忘れそうなのでブログにリンク貼っておく) 外部キー制約に伴うロックの小話 from ichirin2501 外部キー制約に伴うロックの小話 追記: 2015/08/22 ブログでも補足したほうが良いかな、…

生きてます

みょんみょん。

なし

昨日今日は長野におりました。 この春、同期が大学卒業となり、同窓会第0次会?としてメンバー各位が招集されたようです。楽しい時間でした。 月日が経過したのだと、実感した時間でした。今、寂しさを感じています。 改めて、ご卒業おめでとうございます。

あけましておめでとうございます

あけましておめでとうございます。生きております。 記事を書くのも約3ヶ月振りです。昨年の振り返りを途中まで書き出していたのですが、 だるくなったのでやめました。自分らしいです。そして今年です。 冬コミを落とす(記事書く時間がなかった)結果にな…

キー配列を変更

お久しぶりです、生きてます。もう一ヶ月経ちますが、先月から脱ニートして社会人になりました。 楽しい日々を送っています。 情弱キャラが板についてきましたよ(どやぁ んで、キー配列を変更した話を少し。 仕事ではPerlでプログラミングしているんですけ…

身内ハッカソン

ここ数実は身内ハッカソンに参加していました。 3泊4日、ほぼ3日間のハッカソンになります。 各自自由にテーマを取り組むという、完全にソロプレイ。 自分はファミコンのエミュ作成にチャレンジすることにしました。 普段ソフトウェアばっかりなので、ハード…

ksnctfに取り組んだ話

ここ最近、ksnctfというものをやっていました。 主にコンピュータセキュリティに関する問題が出題され、FLAGをゲットする遊びです。 現時点(全21問)では全問正解しましたので、私なりにヒントを書きます。 書こうと思ったのは、勉強になるので是非やってみて…

XORShiftの逆算

XORShiftされた値を逆算する機会がありましたのでメモ書きです。 y = x ^ (x << t) のとき、y ,t が分かってるとして、xを求めたい。 x << t の値は下位t桁は必ず0になっているから、 y & ((1 << t) - 1) と x & ((1 << t) - 1) は等しい。 また、x << tの t…

AOJ.1178 A Broken Door

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1178&lang=jp 35msまで高速化頑張ってました。 現在1位の29msに届かなかったのが残念です。 解法はいくつかあるようですが、BFS+ダイクストラで解きました。 入口から出口までの1つの経路を考えた…

進捗

低機能バイナリエディタ「いっちーくん」人柱版 がひとまず完成致しました。 所々、未実装部分があるので公開はまだ先になります。

記号

/c

ご無沙汰です。 はてなブログに貼り付けるつもりでしたが、ハイライトがまだ効かないのでこちらに。 バイナリエディタの開発を一旦中断して、夏コミネタに向けて違うことしてました。 その結果↓ __attribute__((section(".text"))) char main[] = "%@@@@%!!!…

近況

訳あってめでたくニートになりました。それは置いておいて、 特に記事にするようなネタがないのですが、更新する意思表示も含め、近況報告です。 現在、バイナリエディタを開発中です。 「低機能バイナリエディタ いっちー君」 として公開予定です(コミケネ…

ζ*'ヮ')ζ<$_

ブログの方向性が迷子なので、ちょっと考えます。 方向が定まったら、恐らく新しいブログに移行すると思います。 新ブログ予定地 : ichirin2501's diary 競技プログラミング記事 : rintpsyの日記

てすと

てすと。

気になった

CVE-2011-4885が気になったので調べてみました。 脆弱性対策情報データベースには PHP は、ハッシュ衝突を想定して制限を行わずにフォームパラメータのハッシュ値を算出するため、 サービス運用妨害 (CPU 資源の消費) 状態となる脆弱性が存在します。 影響を…

urllib2周辺は触りたくないですね

またpythonでネットワークプログラミングする機会があったのだけど、 urllib2付近の処理が面倒です。いい加減、処理をまとめようと思って作成してみた。 複雑なことは出来ないけど、簡単なことならこれで十分。 Cookieはデフォルトで機能します。 POSTするデ…

セクションヘッダテーブルのサイズを変更してみた

ELF format のセクションヘッダテーブルのセクションサイズを 変更することで、アンチデバッグに応用できないかと考え、 IDA Pro demo 6.2(Linux), GDB(7.2-51.fc14), objdump(2.20.51.0.7-8.fc14)の各3種の動作を確かめて見ました。 実験環境 Fedora14, カ…

AVTokyo2011

今年も行ってきましたー。 ※発表内容については特に触れていません。 受付時の画像です。 受付開始までは列に並べとのことでしたが、特に意味は無いw そのときに、@ghetto2199さんと少し雑談。 私のコミュ障発動で申し訳ない感じにorz 無線LANの情報と、タ…

自作したフォレンジック問題

フォレンジック問題を自作してみました。問題のファイル 2011/10/03 14:46 追記:解説書きました

mayahu32さんのセキュリティ&プログラミングキャンプ2011感想文を読んだよー

http://d.hatena.ne.jp/mayahu32/20110816/1313505335 id:mayahu32さんのセキュリティ&プログラミングキャンプ2011感想文を読ませてもらいました。 以下ネタバレになります、ご注意ください。

Codegate CTF 2011 Binary 200

久しぶりの解析。 解析時には、IDA Pro 6.0 demo, OllyDbg 2.01 alpha3 を使って解析作業を行いました。プラグインは使用してません。 Freeで良いのあったら是非教えてください。

Perlで重複した要素をユニークにする

重複した要素をユニークにする代表的な方法としていくつかある。 ふと、どのコードが速いのか気になったのでベンチマークを取ってみました。 今回調べたコードは以下の6種類 # use Array::Uniq; sub unique_au{ my @array = @_; return uniq sort @array; } …

Google+はじめました。

2ヶ月間放置してしまった。反省 Google+はじめてみたよ! https://plus.google.com/105359259302560244687/about?hl=ja gplus.toにも登録してみた。こっちだとpost表示に直通になるみたい。 http://gplus.to/ichirin ChromeにGoogle+関連の拡張機能は以下の2…

問題 A - プログラミングコンテスト

http://atcoder.jp/problem/detail/25 83分(3)で正解、UTPCの時計と手元の時計がずれてるようで、参加と同時に正解というタイムにw たぶん3分かかってないかなー

問題 B - (iwi)

http://atcoder.jp/problem/detail/26 96分(13分)で正解

問題 C - [ [ iwi ] ]

http://atcoder.jp/problem/detail/27 124(28)分で正解

問題 D - 停止問題

http://atcoder.jp/problem/detail/28 245(76)分で正解

問題 E - ファーストアクセプタンス

http://atcoder.jp/problem/detail/29 169(45)分で正解

UTPC 2011

UTPC参加者のみなさん、おつかれさまー。 問題文が面白かったので、序文も全部読んでしまったw 1時間23分遅れで参加、A,B,C,D,Eの5問を解いて500pt、58位でした。 解いた順序は、A->B->C->E->D 個人的には、簡単な順に A,B,C,D,E の難易度かなー、そのままw …

今後のTopCoderの日記はこちらのブログ

http://d.hatena.ne.jp/rintpsy/ aoj, pku, spojも上のブログに書くか検討中です。 競技プログラミングの問題に限り〜なので、こちらのブログは今まで通り更新です

Problem D. GoroSort

hoyohoyoさんから日本語訳教えてもらった。 結局わかりませんでした。問題概要 ゴローは、4本の腕があります。 ゴローは、N個の異なる要素を持つ整数をソートする必要があります。 ゴローの計画は、2本の腕で配列のいくつかの要素を抑えつけて、 残りの腕(…

Problem C. Candy Splitting

問題概要 最初に、Seanの所持してる飴を2つに分割し、どちらかをPatrickに分ける 次に、Patrickは各々の飴の値の和を計算します Patrickは山が等しくならないと泣き始めます? 残念なことに、Patrickは幼く、正しく足し算することができない 彼は二進数の足…

Problem A. Bot Trust

問題概要 青と橙のロボットがある。 それぞれのロボットは別々の廊下に隔離されてテストを行う。 各々のロボットの初期値は buttun 1 である。(距離が1の場所) 各々のロボットは1秒間で上下どちらの方向かに1進むことができる、 または、指定位置にいる場…

Google Code Jam Qualification Round 2011

参加者のみなさん、おつかれさまでした。 A、Cを完答の45点でした。 B問題は問題文が理解できず(去年と同じだよ><)、D問題は確率・期待値系なのでさっぱりw 弱点が浮き彫りになってる結果かなーw

python :: urllib2 でhttps通信したときのめも

軽くめも、相変わらずの語尾の不安定さ。 以下の動作は全て python2.7 で行いました。 自動でCookie処理をさせる デフォルトではCookie処理が自動でされないらしい 例えば以下のようにCookie用のhandlerを追加することで解決できる import urllib2 import co…

SPOJ :: 4. Transform the Expression

SPOJ.com - Problem ONP 問題概要 与えられる数式を逆ポーランド記法に直して出力 問題文には明示されてないけど、与えられる数式文法はたぶんこんな感じ <expression> ::= (<formula>) <formula> ::= <factor>+<factor> | <factor>-<factor> | <factor>*<factor> | <factor>/<factor> | <factor>^<factor> <factor> ::= <alfabet> | <expression> <alfabet> ::= a|b|c|d|e|f|g|h|i|j|k|…</alfabet></expression></alfabet></factor></factor></factor></factor></factor></factor></factor></factor></factor></factor></factor></formula></formula></expression>

SPOJ :: 2. Prime Generator

普段、C,C++しか書かないので、pythonも慣れていかないなーと思ったのでSPOJをpythonで解いていくことにした。https://www.spoj.pl/problems/PRIME1/ 問題概要: 整数[n,m]の範囲の素数を出力する。(1 テストケースは最大で10個 エラトステネスの篩いだと、n…

tr1::unordered_mapのkeyを自作クラスとかで使う

C++さっぱりわかりませんね(ドヤ とりあえず、コンパイラさんに激怒されずに使うまでのメモ。 g++ ver4.5.1 boost ver1.44.0 int,long long,std::string etcなどは問題なく使用できるが、pairをkeyに指定したら怒られた。 たぶん、〜だろうなーという妄想は…

C++のmapについてのめも

速度向上を考える上で、mapの使い方で差が出たのでめも。 mapは[ ]演算子がオーバーロードされているので、演算子の書き方を多用していた。演算子で書くと存在しないkeyを指定した場合、自動で生成してくれる。これが便利なときもあれば不便なときもある。 …

AOJ :: 2107 :: Can I go there?

これ http://rose.u-aizu.ac.jp/onlinejudge/ProblemSet/description.jsp?id=2107 問題概要 ある駅から駅に移動するのを1ステップとしたとき、スタート地点の駅からゴール地点の駅までちょうどZステップで行けるかどうか。 何度同じ駅を通っても良い。ただし…

AOJ :: 0018 :: Sorting Five Numbers 104byteまでの軌跡

問題ページはこちら 問題文 5つの整数 a, b, c, d, e を入力し、降順に整列した後に出力して終了するプログラムを作成して下さい。 例えば、 3 6 9 7 5 というデータが与えられたときは、 9 7 6 5 3 と、出力させれば正解です。簡単ですね 続きはネタバレに…

隣接行列と迷路その2

隣接行列と迷路 - ichirin2501の日記のその後の顛末。 問題はこんな感じでした。 迷路のスタート地点からゴール地点までの最小ステップ数とその経路数を求める。 経路の出力は行わない。 前回は、BFS Algorithm, Warshall-Floyd Algorithm の2種類で解きまし…

隣接行列と迷路

その後の顛末について 隣接行列と迷路その2 - ichirin2501の日記 ちょうど隣接行列について調べてて、こんな記事を見かけたので自分も書いてみようと思った。迷路を隣接行列で攻略(part1) - 似非学問的な手記 問題についてはid:g940425さんの記事に書かれ…

C++のコードを逆アセンブリして遊ぶ

風邪完治かも! 逆アセンブリするC++コードはこれです。 環境は Linux ubuntu-vm 2.6.24-18-generic #1 SMP Wed May 28 20:27:26 UTC 2008 i686 GNU/Linux 解析ツールは IDAPro, gdb #include <iostream> #include <string> int main(){ std::string s = std::string(4,'A'); s</string></iostream>…

pythonで可変引数

# -*- coding: utf-8 -*- def __gcd(a,b): return a if b==0 else __gcd(b,a%b) def gcd(*args): return reduce(__gcd, args) def __lcm(a,b): return a*b/__gcd(a,b) def lcm(*args): return reduce(__lcm, args) def main(): print gcd(8,4,12) print lcm(…