2011-12-10から1日間の記事一覧

ZOJ 2886 Look and Say

ZOJ

問題 122344→11221324のような変換をする。(1個の1,2個の2,1個の3,2個の4).。 コード int main(){ int n; cin>>n; while(n--){ string s; cin>>s; s += '#'; int count = 1; FOR(i,1,s.size()){ if(s[i]!=s[i-1]){ printf("%d%c",count,s[i-1]); count = 1; …

ZOJ 2876 Phone list

ZOJ

ZOJ :: Problems :: Show Problem 問題 n個の文字列が与えられる。ある文字列が、もう一方の文字列のprefixになるような2つの文字列が存在するか判定する。 解法 O(n^2)の全探索だと間に合わない。sortして隣り合う文字列を調べるとo(nlogn)で判定できる。 …