UVa 13045 - Drawing Polygon

Source

A Bangladeshi Contest at SUST(20151212)
UVa 13045

問題概要

二次元平面を考える.
正 $N$ 角形であって,最も下($y$ 座標の値が小さい方向)の辺は $x$ 軸に平行で,
最も下の辺の左の点の座標が $(X_0,Y_0)$ で,一辺の長さが $L$ であるようなものを出力する問題.
頂点の座標を,$(X_0,Y_0)$ から順に反時計回りに出力する.

解法

$1$ つ目の頂点は $(X_0,Y_0)$ で,$2$ つ目の頂点は $(X_0+L, Y_0)$.
次の頂点からは,例えば,$1$ つ前の頂点の周りに,$2$ つ前の頂点を $\pi + 2\pi/N$ だけ回転させれば良い.
時間計算量は $O(N)$.

C++によるスパゲッティなソースコード

この部分を表示するには表示権限を持つユーザーでログインする必要があります.


Current time: 2017年07月21日13時39分35秒
Last modified: 2015年12月16日02時11分42秒 (by laycrs)
Tags: Competitive_Programming UVa_Online_Judge UVa_Contest_20151212_1
トップページに戻る

Logged in as: unknown user (not login)

ログイン: