\documentclass{article}

% General information.
\newcommand{\teamname}{ChaosKITs}
\newcommand{\university}{Karlsruhe Institute of Technology}

% Font encoding.
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}

% Display math.
\usepackage{amsmath}
\usepackage{mathtools}
\usepackage{amssymb}

% Nice enumerations without wasting space above and below.
\usepackage{enumitem}
\setlist{nosep}

% Headline and bottomline.
\usepackage{scrpage2}
\pagestyle{scrheadings}
\clearscrheadfoot
\ihead{\university}
\chead{\teamname}
\ohead{\pagemark}

% Colors, used for syntax highlighting.
% To print this document, set all colors to black!
\usepackage{xcolor}
\definecolor{keyword}{rgb}{0, 0, 1}
\definecolor{string}{rgb}{1, 0, 0}
\definecolor{comment}{rgb}{0.2, 0.6, 0.2}
\definecolor{identifier}{rgb}{0, 0, 0}

% Source code listings.
\usepackage{pxfonts}
\usepackage{listings}
\lstset{
	language={C++},
	numbers=left,
	stepnumber=1,
	numbersep=6pt,
	numberstyle=\footnotesize,
	breaklines=true,
	breakautoindent=true,
	breakatwhitespace=false,
	postbreak=\space,
	tabsize=2,
	basicstyle=\ttfamily\footnotesize,
	showspaces=false,
	showstringspaces=false,
	extendedchars=true,
	keywordstyle=\color{keyword}\bfseries,
	stringstyle=\color{string}\bfseries,
	commentstyle=\color{comment}\bfseries,
  identifierstyle=\color{identifier},
	frame=trbl
}
% Listings doesn't support UTF8. This is just enough for German umlauts.
\lstset{literate=%
  {Ö}{{\"O}}1
  {Ä}{{\"A}}1
  {Ü}{{\"U}}1
  {ß}{{\ss}}1
  {ü}{{\"u}}1
  {ä}{{\"a}}1
  {ö}{{\"o}}1
  {~}{{\textasciitilde}}1
}

% Don't waste space at the page borders. Use two column layout.
\usepackage[
  top=2cm,
  bottom=1cm,
  left=1cm,
  right=1cm,
  landscape
]{geometry}

% Multicol layout for the table of contents.
\usepackage{multicol}
\usepackage{multirow}

% Automatically have table fill horizontal space.
\usepackage{tabularx}

% New enviroment for remarks.
\newtheorem{bem}{Bemerkung}

% New commands for math operators.
% Binomial coefficients.
\renewcommand{\binom}[2]{
  \biggl(
  \begin{matrix}
    #1 \\
    #2
  \end{matrix}
  \biggr)
}
% Euler numbers, first kind.
\newcommand{\eulerI}[2]{
  \biggl\langle
  \begin{matrix}
    #1 \\
    #2
  \end{matrix}
  \biggr\rangle
}
% Euler numbers, second kind.
\newcommand{\eulerII}[2]{
  \biggl\langle
  \negthinspace
  \biggl\langle
  \begin{matrix}
    #1 \\
    #2
  \end{matrix}
  \biggr\rangle
  \negthinspace
  \biggr\rangle
}
% Stirling numbers, first kind.
\newcommand{\stirlingI}[2]{
  \biggl[
  \begin{matrix}
    #1 \\
    #2
  \end{matrix}
  \biggr]
}
% Stirling numbers, second kind.
\newcommand{\stirlingII}[2]{
  \biggl\{
  \begin{matrix}
    #1 \\
    #2
  \end{matrix}
  \biggr\}
}

% Shift the title up to waste less space.
\usepackage{titling}
\setlength{\droptitle}{-8em}

% Title and author information.
\title{Team Contest Reference}
\author{\teamname \\ \university}
\begin{document}

% Titlepage with table of contents.
\maketitle
\setlength{\columnsep}{1cm}
\begin{multicols}{3}
	\tableofcontents
\end{multicols}
\newpage

% Content.
\begin{multicols}{2}
  \input{datastructures/datastructures}
  \input{graph/graph}
  \input{geometry/geometry}
  \input{math/math}
  \input{string/string}
  \input{java/java}
  \input{sonstiges/sonstiges}
\end{multicols}

\end{document}