imo

5
NPCA Programming Contest Alpha #02 Div 1 B ファインディング・芋

Upload: ken-ogura

Post on 05-Jul-2015

3.839 views

Category:

Documents


4 download

DESCRIPTION

NPCA #02

TRANSCRIPT

Page 1: Imo

NPCA Programming Contest Alpha #02Div 1 B

ファインディング・芋

Page 2: Imo

問題概要

● 全頂点0で初期化されてる木構造● ある頂点とそこからk回以内子を辿ってい

ける頂点の値を+1するクエリがたくさんくる

● 最終的に最大値を持つ頂点を列挙

Page 3: Imo

いも.. imo.. imos.. いもす!

● いもす法っぽいですね● 起点となる頂点を+1、そこからk回たどった子

孫に-1する– 最後のdfsしながらいもすすれば良い

● 子孫に-1するのが下手したらやばい● 子孫の深さが一定であることを利用する

Page 4: Imo

オイラーツアー

● オイラーツアーのめぐる順番で頂点を番号付けし直す

● 深さごとに頂点をまとめる– ソートする

● すると、ある頂点の子孫かつ、深さKという頂点は同じ深さの集合の中で連続に出現する– 二次元いもす的なことができる

– 端っこは二分探索すればよい

Page 5: Imo

● First AC: natrium● AC 数: 23● Submission数: 36