wiener.tex 723 B

12345678910111213141516171819202122232425262728293031323334353637
  1. \documentclass[10pt, a4paper]{report}
  2. \usepackage[a4paper,
  3. inner=1.5cm, outer=3cm,
  4. top=3cm, bottom=3cm,
  5. bindingoffset=1cm]{geometry}
  6. \usepackage{minted}
  7. \usepackage{hyperref}
  8. \begin{document}
  9. \section{Bombelli's Algoritm}
  10. %% cuz python is pseudocode.
  11. \begin{minted}[fontsize=\small]{python}
  12. def intsqrt(a):
  13. i = 0
  14. while a > 0:
  15. g[i] = a % 100
  16. a /= 100
  17. i += 1
  18. x = 0
  19. r = 0
  20. for j in range(L-1, -1, -1):
  21. r = r*100 + g[j]
  22. y = 0
  23. for d in range(1, 10):
  24. yn = d*(20*x + d)
  25. if yn < r: y = yn
  26. else: break
  27. r -= y
  28. x = 10*x + d-1
  29. return (x, r)
  30. \end{minted}
  31. Has complexity $O(\log ^2 n)$.
  32. \end{document}