From 9d3c8c0e6e1a7ba43bf3dc19350d1dca68b657a3 Mon Sep 17 00:00:00 2001
From: Chris Xiong <chirs241097@gmail.com>
Date: Sun, 10 Feb 2019 11:16:07 +0800
Subject: Initial commit.

---
 sduacm2017/lec3/lec.tex | 241 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 241 insertions(+)
 create mode 100644 sduacm2017/lec3/lec.tex

(limited to 'sduacm2017/lec3/lec.tex')

diff --git a/sduacm2017/lec3/lec.tex b/sduacm2017/lec3/lec.tex
new file mode 100644
index 0000000..990c6e5
--- /dev/null
+++ b/sduacm2017/lec3/lec.tex
@@ -0,0 +1,241 @@
+\documentclass[aspectratio=169,hyperref={pdfencoding=auto,psdextra}]{beamer}
+\usepackage[utf8]{inputenc}
+\usepackage{CJKutf8}
+\usepackage{ulem}
+\usepackage{graphicx}
+\usepackage{fancyvrb}
+\usepackage{amsmath}
+\usepackage{multicol}
+\usetheme{Malmoe}
+\usecolortheme{default}
+\begin{CJK*}{UTF8}{gbsn}
+\title{「初中数学都不会」}
+\subtitle{——Computational Geometrics}
+\author{Chris Xiong}
+\date{2017-08-18}
+\begin{document}
+	\frame{\titlepage}
+	\begin{frame}
+		\frametitle{「初中数学都不会」}
+		\framesubtitle{Outline}
+		\begin{itemize}
+			\item Basics
+			\begin{itemize}
+				\item Vectors
+				\item Distances
+				\item Area
+				\item Intersections
+				\item Transformations
+			\end{itemize}
+			\item Convex hull
+			\item Extra fun
+			\item Templates
+			\item 殴打宇宙智障
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Basics}
+		\framesubtitle{Vectors}
+		\begin{itemize}
+			\item Computational Gemoetrics in ICPC=\\
+					\hspace{1cm}40\% Junior high school maths+\\
+					\hspace{1cm}30\% Senior high school maths+\\
+					\hspace{1cm}20\% Brainstorming+\\
+					\hspace{1cm}10\% College maths
+			\item $\mathbf{u}$, $\mathbf{v}$, $\vec{u}$, $\vec{v}$
+			\item $\vec{u}+\vec{v}$,$\vec{u}-\vec{v}$,$s\vec{u}$,$\vec{u}\cdot\vec{v}$,$\vec{u}\times\vec{v}$
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Basics}
+		\framesubtitle{Distances}
+		\begin{itemize}
+			\item point 2 point
+			\item point 2 line
+			\pause
+			\item polygon 2 polygon???
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Basics}
+		\framesubtitle{Area}
+		\begin{itemize}
+			\item Circle???
+			\item Triangle?
+				\begin{itemize}
+					\item \sout{$ah/2$}
+					\item Heron's formula
+					\item Cross product
+				\end{itemize}
+			\item Polygon???
+				\begin{itemize}
+					\item Slicing
+				\end{itemize}
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Basics}
+		\framesubtitle{Intersections}
+		\begin{itemize}
+			\item point \& line
+			\item point \& segment
+			\item line \& line
+			\item line \& segment
+			\item segment \& segment
+			\item circle \& line
+			\item circle \& circle
+			\pause
+			\item \sout{convex} polygon \& point \pause
+				\begin{itemize}
+					\item \sout{randomizing} (polyhedron)
+					\item ray casting
+					\item winding number
+				\end{itemize}
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Basics}
+		\framesubtitle{Transformations}
+		\begin{itemize}
+			\item Scaling
+			\item Rotation
+			\item ${\displaystyle {\begin{bmatrix}s_x&0\\0&s_y\end{bmatrix}}}$
+			\item ${\displaystyle {{\begin{bmatrix}\cos \theta &\sin \theta \\-\sin \theta &\cos \theta \end{bmatrix}}}}$
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Convex hull}
+		\framesubtitle{WTF???}
+		\begin{itemize}
+			\item Smallest convex polygon (set) that contains a set of points.
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Convex hull}
+		\framesubtitle{Algorithms}
+		\begin{itemize}
+			\item Brute force: gift wrapping
+			\item Graham scan
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Convex hull}
+		\framesubtitle{Gift wrapping}
+		\begin{itemize}
+			\item The left most point must be in the resulting set
+			\item Starting from that point, select the next point such that
+			all points are \textbf{to the right} of the newly formed line.
+			\item Time complexity: $O(nh)$
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Convex hull}
+		\framesubtitle{Graham scan}
+		\begin{itemize}
+			\item Find an extreme point and sort the remaining point according
+			to polar angle.
+			\item Start with a stack with two items, the extreme point and the
+			first point in the sorted list.
+			\item ($P_0$ denotes the top element of the stack, $P_1$ denotes the
+			element under $P_0$) For each point left in the list ($T$), pop the
+			stack until $\overrightarrow{P_1P_0}$ and $\overrightarrow{P_0T}$ forms
+			\textbf{a left turn}. Then push $T$ onto the stack.
+			\item Time complexity: $O(n log n)$ (with sorting)
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Convex hull}
+		\framesubtitle{Example: NEERC 08 A}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Example: PetrSU SC 04 C}
+		Arc-arc intersection
+		\includegraphics[scale=0.5]{c1.png}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Example: PetrSU SC 04 C}
+		\includegraphics[scale=0.36]{c2.png}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Example: MultiUniversity Traning 20170815 H}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Example: Asia GuangzhouRC 14 H}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Example: "Angry birds"}
+		One of the few problems of computational geometrics in ICPC
+		that involves college maths.
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{CG. Combined with other algorithms}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Extra fun}
+		\framesubtitle{Rotating calipers}
+		Solves:
+		\begin{itemize}
+			\item Max/min width of convex polygon
+			\item Max/min distance between two convex polygons
+			\item Antipodal points/Farthest pairs
+			\item Union/intersection of convex polygons
+			\item Min area/perimeter obb
+			\item etc.
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{Templates}
+		\framesubtitle{Critical for Computational Geometrics (maybe)}
+		\begin{itemize}
+			\item Basic operations
+			\item Basic intersections
+			\item Circle-line intersection
+			\item Circle-triangle intersection
+			\item Circle-circle intersection
+			\item 3D vector operations
+			\item Half-plane intersection
+			\item Cloest/Farthest Pair
+			\item etc.
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{殴打宇宙智障}
+		\framesubtitle{光辉事迹+1}
+		\begin{itemize}
+			\item 建完图后把图清空然后跑网络流\pause
+			\item 熟悉你的模板\pause
+			\item 多校睡觉\pause
+			\item 队伍组成
+			\item 代码手？\pause
+			\item 违反中央八项规定\pause
+			\item 口技
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{殴打宇宙智障}
+		\framesubtitle{后事}
+		\begin{itemize}
+			\item 21日最后一次讲课
+			\item 8月31日计科退宿舍
+			\item 如有不同以宇宙智障为准
+		\end{itemize}
+	\end{frame}
+	\begin{frame}
+		\frametitle{殴打宇宙智障}
+		\framesubtitle{没来得及讲的东西}
+		\begin{itemize}
+			\item 概率（解方程/dp）、高斯消元
+			\item 网络流
+			\item 好像没什么了？
+			\item Good luck to ya.
+		\end{itemize}
+	\end{frame}
+\end{CJK*}
+\end{document}
+
-- 
cgit v1.2.3

