\documentclass{article}
\usepackage{algorithm,algpseudocode}
\algtext*{EndIf}% Remove \EndIf
\renewcommand{\thealgorithm}{}
\usepackage{amsmath,amssymb}
\usepackage{subcaption}
\usepackage{comment}
\begin{document}
\begin{algorithm}
\caption{$Game PrvInd_{G,\phi}$}
\label{pseudoPSO}
\begin{algorithmic}
\Procedure{Garble}{$f_0, f_1, x_0, x_1$}
\If{$f(\phi(f0) \neq\phi(f1)$}
\Return $\perp$ \EndIf
\If {$ev(f_0, x_0) \neq ev(f_1, x_1)$}
\Return $\perp$ \EndIf
\If{$\{x_0,x_1\} \nsubseteq \{0,1\}^{{f_0}.n}$} \Return $\perp$ \EndIf
$(F, e, d) \leftarrow Gb(1^k, f_b)$;
$X \leftarrow En(e, x_b)$
\Return (F,X, d)
\EndProcedure
\end{algorithmic}
\end{algorithm}
\begin{algorithm}
\caption{$Game PrvInd_{G,\phi,S}$}
\label{pseudoPSO}
\begin{algorithmic}
\Procedure{Garble}{f,x,}
\If{$x\notin\{0,1\}^{{f}.n}$}
\Return $\perp$ \EndIf
\If {b=1}
$(F, e, d) \leftarrow Gb(1^k, f)$;
$X \leftarrow En(e, x)$
\Else $ y \leftarrow ev(f, x); (F,X, d) \leftarrow S(1^k, y,\phi(f))$
\EndIf
\Return (F,X, d)
\EndProcedure
\end{algorithmic}
\end{algorithm
\end{document}
아래 이미지와 같이 오른쪽에 각 알고리즘에 대한 하위 캡션이 있는 단일 그림에 여러 알고리즘을 표시하고 싶습니다.
하지만 내가 얻는 것은 이것이다(처음 두 알고리즘에 대해서만 표시됨:)
이를 위해 사용해야 하는 다른 라이브러리가 있나요?
답변1
다음은 목표를 달성합니다. tabular
적절한 규칙(상단 및 하단)을 적용하기 위해 각 알고리즘을 내부에 설정한 다음 환경만 사용하여 algorithmic
의사코드를 설정할 수 있습니다.
\documentclass{article}
\usepackage[margin=0.5in]{geometry}
\usepackage{algorithm,algpseudocode,amsmath,amssymb}
\algtext*{EndIf}% Remove \EndIf
\renewcommand{\thealgorithm}{}
\begin{document}
\begin{figure}
\begin{tabular}[t]{@{} p{.49\linewidth} @{}}
\hline
\begin{algorithmic}
\Procedure{Garble}{$f_0, f_1, x_0, x_1$}\hfill $\text{Game PrvInd}_{G,\phi}$
\If{$f(\phi(f0) \neq \phi(f1))$} \Return $\perp$
\EndIf
\If{$\text{ev}(f_0, x_0) \neq \text{ev}(f_1, x_1)$} \Return $\perp$
\EndIf
\If{$\{x_0,x_1\} \nsubseteq \{0,1\}^{{f_0} \cdot n}$} \Return $\perp$
\EndIf
\State $(F, e, d) \leftarrow \text{Gb}(1^k, f_b)$;
$X \leftarrow \text{En}(e, x_b)$
\Return $(F, X, d)$
\EndProcedure
\end{algorithmic} \\
\hline
\end{tabular}\hfill
\begin{tabular}[t]{@{} p{.49\linewidth} @{}}
\hline
\begin{algorithmic}
\Procedure{Garble}{$f,x$}\hfill $\text{Game PrvInd}_{G,\phi,S}$
\If{$x \notin \{0,1\}^{{f} \cdot n}$} \Return $\perp$
\EndIf
\If{$b = 1$} $(F, e, d) \leftarrow \text{Gb}(1^k, f)$;
$X \leftarrow \text{En}(e, x)$
\Else{} $y \leftarrow \text{ev}(f, x)$; $(F, X, d) \leftarrow S(1^k, y, \phi(f))$
\EndIf
\State \Return $(F, X, d)$
\EndProcedure
\end{algorithmic} \\
\hline
\end{tabular}
\caption{Some games and their definitions.}
\end{figure}
\end{document}