\documentclass[12pt]{article} 
\input{ejoi_structure_analysis.tex}

\usepackage[bulgarian]{babel}
\usepackage{emoji}

\begin{document}

\renewcommand{\problemName}{Задача Ябълки}

\section{Анализ на анализа на решението на задачата apples}
\begin{center}
	Условие, решения, анализ, анализ на анализа: Димитър Шапатов; Идея: Кирил Зашев; Решение: Борис Бобев
\end{center}

Тук основното наблюдение е, че плодовете представят битовете на числото (ябълка -- 1, круша -- 0).

\subsection{Подзадача 1}
От примера виждаме, че можем просто да намерим XOR на двете числа.

\subsection{Подзадача 2}
Нека разгледаме примера, даден в анализа. Можем да забележим, че черна черта означава събиране, зелена означава XOR, а червена AND.

Така алгоритъмът се свежда до следното: докато първото число не е нула, първото число става AND на двете текущи числа, изместен с един бит наляво, а второто число става XOR на двете текущи числа (в решенията е имплементирано наобратно, и двата начина работят). Накрая отговорът е във второто число. Имплементацията на това дава пълен брой точки, а освен това се вижда и че оригиналното условие на задачата е сума на две числа без използването на оператор + и подобни функции.

\end{document}
