187.1
別IPからログインすると前のIPが追い出されるんだろうか?
300
文字列のうち、英数字と@と-からなる最後の部分のうちで、-のみでないものを切り出し、-を消して答えよという問題。
わざわざ面倒に書いてあるけれど、最初から-を全部つぶして、関係ない文字をsplitした上で、一番最後に出てくる空文字列でないものを答えればおしまい。
500
e^(-x^2) をx1からx2まで積分した値を答えよという問題。ただしx1からx2までの範囲は高々1まで。
単純に範囲を細かく切って台形に近似してしまえばおしまい。計算速度を考えると1Mステップくらいにしておけば大丈夫。
900
ATGCからなる2500文字程度の文字列3つの共通部分文字列のうち、最長のものの長さを答えよという問題。
SuffixArrayを実装できるならそれでさっくりできるので、一番いいんだろうけれど、普通は実装が頭に入ってたりはしない気がする...。
長さNの部分文字列を全部Hashに詰め込んで、全部に共通して存在するものがあれば良い、というのをNについてバイナリサーチすれば時間的には問題ないらしい。全部ループしようとすると当然終わらない。