$$ \def\bra#1{\mathinner{\left\langle{#1}\right|}} \def\ket#1{\mathinner{\left|{#1}\right\rangle}} \def\braket#1#2{\mathinner{\left\langle{#1}\middle|#2\right\rangle}} $$

◇◇ref014:AtCoder Beginner Contest 112 - C : Pyramid◇◇


☆問題URL

https://beta.atcoder.jp/contests/abc112/tasks/abc112_c

☆問題の概要

二次元グリッド上にピラミッドが1つ存在して、中心座標$(C_X,C_Y)$と高さ$H$が決まっている。$N$点についての情報が与えられる。各点について座標と高さが与えられるので、それらの情報に合致するようなピラミッドを求めよ。

☆解法

グリッドが充分に狭いので座標を全探索できて、各座標について$N$点すべてを見ることができるので、単純に全探索すればよい。$h\neq0$であるある一点$(x,y,h)$が与えられたとき、ありうる高さは$(h+|C_x-x|+|C_y-y|)$しかない。それ以外の点がこれに一致しなければその座標はピラミッドの中心ではないことが分かる。

☆反省

ハル研プロコンとかぶっていたので20分くらいで放り投げた問題。

戻る