-
Notifications
You must be signed in to change notification settings - Fork 0
/
main.tex
125 lines (90 loc) · 3.07 KB
/
main.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass[12pt]{article}
\usepackage[a5paper,margin=2cm]{geometry}
\usepackage[french]{babel}
\usepackage{amssymb,amsthm,amsmath}
\usepackage{xltxtra}
\usepackage{stmaryrd}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{color}
\lstset{
extendedchars=false,
showstringspaces=false,
escapeinside=``,
keywordstyle=\color{blue},
commentstyle=\color[rgb]{0.133,0.545,0.133},
columns=flexible,
language=C++,
tabsize=4,
basicstyle=\ttfamily,
numbers=left,
frame=lines
}
\begin{document}
\tableofcontents\vspace{0.5cm}
\begin{center}
\includegraphics[width=0.8\linewidth]{np.jpg}
\end{center}
%\chapter{ACM Cookbook}
\section{Algorithmique du texte}
\subsection{Tableaux de suffixes}
Temps de cuisson : $O(n \log^2 n)$
{\scriptsize\lstinputlisting{code/suffix.cpp}}
\subsection{Knuth-Morris-Pratt}
Temps de cuisson : $O(n)$
{\scriptsize\lstinputlisting{code/kmp.cpp}}
\section{Optimisation}
\subsection{Sparse max-flow}
{\scriptsize\lstinputlisting{code/Dinic.cc}}
\subsection{Min-cost max-flow}
{\scriptsize\lstinputlisting{code/MinCostMaxFlow.cc}}
\subsection{Push-relabel max-flow}
{\scriptsize\lstinputlisting{code/PushRelabel.cc}}
\subsection{Min-cost matching}
{\scriptsize\lstinputlisting{code/MinCostMatching.cc}}
\subsection{Max bipartite matching}
{\scriptsize\lstinputlisting{code/MaxBipartiteMatching.cc}}
\subsection{Global min cut}
{\scriptsize\lstinputlisting{code/MinCut.cc}}
\section{Géométrie}
\subsection{Convex hull}
{\scriptsize\lstinputlisting{code/ConvexHull.cc}}
\subsection{Miscellaneous geometry}
{\scriptsize\lstinputlisting{code/Geometry.cc}}
\subsection{Slow Delaunay triangulation}
{\scriptsize\lstinputlisting{code/Delaunay.cc}}
\section{Algorithmes numériques}
\subsection{Number theoretic algorithms (modular, Chinese remainder, linear Diophantine)}
{\scriptsize\lstinputlisting{code/Euclid.cc}}
\subsection{Systems of linear equations, matrix inverse, determinant}
{\scriptsize\lstinputlisting{code/GaussJordan.cc}}
\subsection{Reduced row echelon form, matrix rank}
{\scriptsize\lstinputlisting{code/ReducedRowEchelonForm.cc}}
\subsection{Fast Fourier transform}
{\scriptsize\lstinputlisting{code/FFT_new.cc}}
\subsection{Simplex algorithm}
{\scriptsize\lstinputlisting{code/Simplex.cc}}
\section{Graphes}
\subsection{Fast Dijkstra's algorithm}
{\scriptsize\lstinputlisting{code/FastDijkstra.cc}}
\subsection{Strongly connected components}
{\scriptsize\lstinputlisting{code/SCC.cc}}
\section{Structures de données}
\subsection{Suffix arrays}
{\scriptsize\lstinputlisting{code/SuffixArray.cc}}
\subsection{Binary Indexed Tree}
{\scriptsize\lstinputlisting{code/BIT.cc}}
\subsection{Union-Find Set}
{\scriptsize\lstinputlisting{code/UnionFind.cc}}
\subsection{KD-tree}
{\scriptsize\lstinputlisting{code/KDtree.cc}}
\section{Divers}
\subsection{Longest increasing subsequence}
{\scriptsize\lstinputlisting{code/LongestIncreasingSubsequence.cc}}
\subsection{Dates}
{\scriptsize\lstinputlisting{code/Dates.cc}}
\subsection{Prime numbers}
{\scriptsize\lstinputlisting{code/Primes.cc}}
\end{document}