將演算法嵌入到多列海報中(multicols)

將演算法嵌入到多列海報中(multicols)

我正在製作一張具有多列的海報(通過multicols,可能是因為有一個自訂海報標題)。我知道我可以使用algorithmic2e,但假設我只是想堅持使用algorithmicx- 有什麼辦法可以處理這個問題嗎?

Package multicol Warning: Floats and marginpars not allowed 
inside `multicols' environment!.

我能找到的所有解決方案都建議使用文件algorithmic2e或將文件聲明為\documentclass[twocolumn]{article}.

我不確定如何將後者與海報模板

這是上面模板中的最小工作程式碼,其中包含algorithm從以下位置複製的環境和演算法程式碼這個問題在那裡,但它似乎沒有顯示任何東西:

\documentclass[a0,landscape]{a0poster}

\usepackage{multicol} % This is so we can have multiple columns of text side-by-side
\columnsep=100pt % This is the amount of white space between the columns in the poster
\columnseprule=3pt % This is the thickness of the black line between the columns in the poster

\usepackage[svgnames]{xcolor} % Specify colors by their 'svgnames', for a full list of all colors available see here: http://www.latextemplates.com/svgnames-colors

% \usepackage{times} % Use the times font
\usepackage{palatino} % Uncomment to use the Palatino font

\usepackage{graphicx} % Required for including images
\graphicspath{{figures/}} % Location of the graphics files
\usepackage{booktabs} % Top and bottom rules for table
\usepackage[font=small,labelfont=bf]{caption} % Required for specifying captions to tables and figures
\usepackage{amsfonts, amsmath, amsthm, amssymb} % For math fonts, symbols and environments
\usepackage{wrapfig} % Allows wrapping text around tables and figures

%% custom packages

\usepackage{tikz}
\usepackage{relsize}
\usepackage{anyfontsize}
\usepackage{algpseudocode,algorithm,algorithmicx}

\newcommand*\DNA{\textsc{dna}}
\newcommand*\Let[2]{\State #1 $\gets$ #2}
\algrenewcommand\algorithmicrequire{\textbf{Precondition:}}
\algrenewcommand\algorithmicensure{\textbf{Postcondition:}}

\begin{document}

\begin{minipage}[b]{0.55\linewidth}
\veryHuge \color{NavyBlue} \textbf{Title} \color{Black}\\ % Title
\Huge\textit{Subtitle}\\[1cm] % Subtitle
\end{minipage}
\begin{minipage}[b]{0.25\linewidth}
\color{DarkSlateGray}
% Department Name\\ % Address
\end{minipage}
\begin{minipage}[b]{0.19\linewidth}
\includegraphics[width=20cm]{logo.png} % Logo or a photo of you, adjust its dimensions here
\end{minipage}

\vspace{1cm} % A bit of extra whitespace between the header and poster content

\begin{multicols}{3} % This is how many columns your poster will be broken into, a poster with many figures may benefit from less columns whereas a text-heavy poster benefits from more

\begin{abstract}
Some abstract.
\end{abstract}
\section*{Introduction}
Some intro
\section*{Main Objectives}
\begin{enumerate}
\item Lorem ipsum dolor sit amet, consectetur.
\item Nullam at mi nisl. Vestibulum est purus, ultricies cursus volutpat sit amet, vestibulum eu.
\item Praesent tortor libero, vulputate quis elementum a, iaculis.
\end{enumerate}
\color{Black}

\begin{algorithm}
  \caption{Counting mismatches between two packed \DNA strings
    \label{alg:packed-dna-hamming}}
  \begin{algorithmic}[1]
    \Require{$x$ and $y$ are packed \DNA strings of equal length $n$}
    \Statex
    \Function{Distance}{$x, y$}
      \Let{$z$}{$x \oplus y$} \Comment{$\oplus$: bitwise exclusive-or}
      \Let{$\delta$}{$0$}
      \For{$i \gets 1 \textrm{ to } n$}
        \If{$z_i \neq 0$}
          \Let{$\delta$}{$\delta + 1$}
        \EndIf
      \EndFor
      \State \Return{$\delta$}
    \EndFunction
  \end{algorithmic}
\end{algorithm}

\end{multicols}
\end{document}

謝謝。

答案1

謝謝大衛查理爾,我已經弄清楚了。

解決方法很簡單,只需更換:

\begin{algorithm}

\begin{algorithm}[H]

一切都開始神奇地運轉。事實上,人們應該避免在其他浮動環境中使用浮動環境。

相關內容