複素数(complex number)
平面幾何の(競技)プログラミングをするとき、2次元ベクトルの代わりとして使えるので便利。
C++ならstd::complexをtypedefしときゃ、演算子を定義する手間が省ける。
回転変換なども、回転の1次変換を暗記しておくより、複素数の極形式で考える方がわかりやすいと思う。
基本性質
- (拡張)三角不等式
- 、
- 、
平面幾何の(競技)プログラミングをするとき、2次元ベクトルの代わりとして使えるので便利。
C++ならstd::complexをtypedefしときゃ、演算子を定義する手間が省ける。
回転変換なども、回転の1次変換を暗記しておくより、複素数の極形式で考える方がわかりやすいと思う。