{"id":261550,"date":"2015-07-15T18:36:02","date_gmt":"2015-07-15T14:36:02","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=261550"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=261550","title":{"rendered":"\u0423\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0438 C++ 11"},"content":{"rendered":"<p>             \u0425\u043e\u0447\u0443 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u0440\u0430\u0437 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 C++11. \u0414\u0430\u043d\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0441\u044f \u0437\u0434\u0435\u0441\u044c (<a href=\"http:\/\/habrahabr.ru\/post\/124258\/\">\u00ab\u0423\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u043d\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b\u00bb<\/a>, <a href=\"http:\/\/habrahabr.ru\/post\/121950\/\">\u00ab\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0434\u043b\u044f \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b\u00bb<\/a>), \u043d\u043e \u0432\u0438\u0434\u0438\u043c\u043e \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u044f \u043d\u0435 \u0443\u043c\u0435\u044e \u0438\u0445 \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c, \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0441 \u0447\u0438\u0441\u043b\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b, \u0430 \u0432\u0442\u043e\u0440\u043e\u0439 \u0434\u0435\u043b\u0430\u0435\u0442 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u043d\u0443\u0436\u043d\u043e.<\/p>\n<p>  \u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0435 \u0443\u0441\u0442\u0430\u043b \u043e\u0442 \u044d\u0442\u043e\u0439 \u0437\u0430\u0435\u0437\u0436\u0435\u043d\u043d\u043e\u0439 \u0442\u0435\u043c\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435\u0445, \u043a\u0442\u043e \u0438\u0441\u043f\u044b\u0442\u044b\u0432\u0430\u0435\u0442 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u0438 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e, \u043d\u043e \u043e\u0447\u0435\u043d\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043f\u0440\u043e\u0448\u0443 \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h2>\u041e\u0433\u043b\u0430\u0432\u043b\u0435\u043d\u0438\u0435<\/h2>\n<p>  <\/p>\n<ul>\n<li><a href=\"#\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435\">\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/a><\/li>\n<li><a href=\"#\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f\">\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/a><\/li>\n<li><a href=\"#\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b\">\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b \u043d\u0430\u0438\u0432\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b<\/a><\/li>\n<li><a href=\"#\u0412\u044b\u0432\u043e\u0434\u044b\">\u0412\u044b\u0432\u043e\u0434\u044b<\/a><\/li>\n<\/ul>\n<p>  <\/p>\n<h1><anchor>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/anchor><\/h1>\n<p>  <\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/443\/5cf\/279\/4435cf27992240d4909dff6ac617e1f6.png\"  width=\"300\"\/><\/div>\n<p>  \u0412\u0441\u0435\u0445 \u043d\u0430\u0441 \u0443\u0447\u0438\u043b\u0438 \u0443\u043c\u043d\u043e\u0436\u0430\u0442\u044c \u0432 \u0441\u0442\u043e\u043b\u0431\u0438\u043a \u0432 \u0448\u043a\u043e\u043b\u0435. \u042d\u0442\u043e \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0437\u0432\u0435\u0441\u0442\u0435\u043d \u0443\u0436\u0435 \u043c\u043d\u043e\u0433\u043e \u0442\u044b\u0441\u044f\u0447 \u043b\u0435\u0442:<\/p>\n<div style=\"text-align:center;\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/768\/55f\/4f7\/76855f4f7f7846a09a7426541ef63944.png\"  width=\"300\"\/><\/div>\n<p>  \u0414\u0430\u0436\u0435 \u0410\u043d\u0434\u0440\u0435\u0439 \u041d\u0438\u043a\u043e\u043b\u0430\u0435\u0432\u0438\u0447 \u041a\u043e\u043b\u043c\u043e\u0433\u043e\u0440\u043e\u0432 \u0432 1956 \u0433\u043e\u0434\u0443 \u0441\u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u0430\u043b \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u0443 <img decoding=\"async\" src=\"https:\/\/upload.wikimedia.org\/math\/b\/0\/8\/b08b1c6ec09f20907eb1d6f1392c01c6.png\" height=\"18\"\/> (\u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u043b\u0430\u0441\u044c \u0432 \u043d\u0438\u0436\u043d\u0435\u0439 \u043e\u0446\u0435\u043d\u043a\u0435 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u043e\u0439 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?M(n)=O(n^2)\" title=\"M(n)=O(n^2)\"\/>), \u0442\u0430\u043a \u043a\u0430\u043a \u0435\u0441\u043b\u0438 \u0431\u044b \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043e\u0432\u0430\u043b \u043a\u0430\u043a\u043e\u0439-\u043b\u0438\u0431\u043e \u0434\u0440\u0443\u0433\u043e\u0439 \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0442\u043e \u0437\u0430 \u0442\u0430\u043a\u043e\u0439 \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043e\u043d \u0431\u044b\u043b \u0431\u044b \u043d\u0430\u0439\u0434\u0435\u043d. <\/p>\n<p>  \u041f\u0441\u0435\u0432\u0434\u043e\u043a\u043e\u0434 \u043d\u0430\u0438\u0432\u043d\u043e\u0433\u043e \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0441\u0442 \u043a\u0430\u043a \u0438 \u0441\u0430\u043c \u043c\u0435\u0442\u043e\u0434:<\/p>\n<pre><code>multiply(x[0 ... l], y[0 ... r]): res = [0 ... r+l] for (i = 0, i &lt; r; ++i):     carry = 0     for (j = 0, j &lt; l; ++j):         res[i + j] += carry + x[i] * y[j]         carry = res[i + j] \/ base \/\/ base -  \u0431\u0430\u0437\u0430 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u043b\u0430         res[i + j] %= base     res[i + l] += carry <\/code><\/pre>\n<p>  \u0417\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0443 \u043f\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u043b\u0430\u0442\u0438\u0442\u044c \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c\u044e, \u043d\u043e \u044d\u0442\u043e\u0442 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438 \u043d\u0435 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0442\u044c \u043e\u0441\u0442\u0430\u0442\u043e\u043a \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0448\u0430\u0433\u0435.<\/p>\n<p>  \u0427\u0435\u0440\u0435\u0437 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442 \u043f\u043e\u0441\u043b\u0435 \u0444\u043e\u0440\u043c\u0443\u043b\u0438\u0440\u043e\u0432\u043a\u0438 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u044b \u041a\u043e\u043b\u043c\u043e\u0433\u043e\u0440\u043e\u0432\u0430, <a href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%9A%D0%B0%D1%80%D0%B0%D1%86%D1%83%D0%B1%D0%B0,_%D0%90%D0%BD%D0%B0%D1%82%D0%BE%D0%BB%D0%B8%D0%B9_%D0%90%D0%BB%D0%B5%D0%BA%D1%81%D0%B5%D0%B5%D0%B2%D0%B8%D1%87\">\u0410\u043d\u0430\u0442\u043e\u043b\u0438\u0439 \u0410\u043b\u0435\u043a\u0441\u0435\u0435\u0432\u0438\u0447 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u0430<\/a> \u043d\u0430\u0448\u0435\u043b \u0431\u043e\u043b\u0435\u0435 \u0431\u044b\u0441\u0442\u0440\u044b\u0439 \u043c\u0435\u0442\u043e\u0434. \u0415\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434 \u0431\u044b\u043b \u043e\u0431\u043e\u0431\u0449\u0435\u043d \u0434\u043e \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u044b \u00ab\u0440\u0430\u0437\u0434\u0435\u043b\u044f\u0439 \u0438 \u0432\u043b\u0430\u0441\u0442\u0432\u0443\u0439\u00bb. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c \u043a\u0430\u043a \u044d\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u0434\u0432\u0430 \u0447\u0438\u0441\u043b\u0430 \u0434\u043b\u0438\u043d\u044b <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?n\" title=\"n\"\/>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u044c\u0435\u043c \u043d\u0430 \u0434\u0432\u0435 \u0447\u0430\u0441\u0442\u0438 \u0434\u043b\u0438\u043d\u044b <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?\\frac{n}{2}\" title=\"\\frac{n}{2}\"\/>:<br \/>  <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?\\\\X&amp;space;=&amp;space;\\left&amp;space;[&amp;space;X_l&amp;space;\\right&amp;space;]\\left&amp;space;[&amp;space;X_r&amp;space;\\right&amp;space;]=10^{\\frac{n}{2}}\\cdot&amp;space;X_l&amp;space;&amp;plus;&amp;space;X_r&amp;space;\\\\Y&amp;space;=&amp;space;\\left&amp;space;[&amp;space;Y_l&amp;space;\\right&amp;space;]\\left&amp;space;[&amp;space;Y_r&amp;space;\\right&amp;space;]=10^{\\frac{n}{2}}\\cdot&amp;space;Y_l&amp;space;&amp;plus;&amp;space;Y_r\" title=\"\\\\X = \\left [ X_l \\right ]\\left [ X_r \\right ]=10^{\\frac{n}{2}}\\cdot X_l + X_r \\\\Y = \\left [ Y_l \\right ]\\left [ Y_r \\right ]=10^{\\frac{n}{2}}\\cdot Y_l + Y_r\"\/><br \/>  \u0422\u0435\u043f\u0435\u0440\u044c \u0437\u0430\u043c\u0435\u0442\u0438\u043c, \u0447\u0442\u043e[1]:<br \/>  <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?\\\\X&amp;space;\\cdot&amp;space;Y&amp;space;=&amp;space;\\left(&amp;space;10^{\\frac{n}{2}}\\cdot&amp;space;X_l&amp;space;&amp;plus;&amp;space;X_r&amp;space;\\right&amp;space;)&amp;space;\\cdot&amp;space;\\left(&amp;space;10^{\\frac{n}{2}}\\cdot&amp;space;Y_l&amp;space;&amp;plus;&amp;space;Y_r&amp;space;\\right&amp;space;)=&amp;space;\\newline&amp;space;=&amp;space;10^n&amp;space;X_l\\cdor&amp;space;Y_l&amp;space;&amp;plus;&amp;space;10^{\\frac{n}{2}}\\left(&amp;space;X_l\\cdot&amp;space;Y_r&amp;space;&amp;plus;&amp;space;X_r\\cdot&amp;space;Y_l&amp;space;\\right&amp;space;)&amp;space;&amp;plus;&amp;space;X_r\\cdot&amp;space;Y_r\" title=\"\\\\X \\cdot Y = \\left( 10^{\\frac{n}{2}}\\cdot X_l + X_r \\right ) \\cdot \\left( 10^{\\frac{n}{2}}\\cdot Y_l + Y_r \\right )= \\newline = 10^n X_l\\cdor Y_l + 10^{\\frac{n}{2}}\\left( X_l\\cdot Y_r + X_r\\cdot Y_l \\right ) + X_r\\cdot Y_r\"\/><\/p>\n<p>  \u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c 4 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0438 \u0442\u043e\u0433\u0434\u0430 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043d\u0430\u0438\u0432\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430. \u041d\u043e \u0410\u043d\u0430\u0442\u043e\u043b\u0438\u0439 \u0410\u043b\u0435\u043a\u0441\u0435\u0435\u0432\u0438\u0447 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u0430 \u0437\u0430\u043c\u0435\u0442\u0438\u043b, \u0447\u0442\u043e \u043e\u0431\u043e\u0439\u0442\u0438\u0441\u044c \u043c\u043e\u0436\u043d\u043e 3 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0447\u0438\u0441\u0435\u043b \u0434\u043b\u0438\u043d\u044b <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?\\frac{n}{2}\" title=\"\\frac{n}{2}\"\/> \u2014 <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?X_l\\cdot&amp;space;Y_l\" title=\"X_l\\cdot Y_l\"\/>, <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?X_l\\cdot&amp;space;Y_l\" title=\"X_r\\cdot Y_r\"\/>, <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?\\left(&amp;space;X_l&amp;space;&amp;plus;&amp;space;X_r&amp;space;\\right&amp;space;)\\cdot&amp;space;\\left(&amp;space;Y_l&amp;space;&amp;plus;&amp;space;Y_r&amp;space;\\right&amp;space;)\" title=\"\\left( X_l + X_r \\right )\\cdot \\left( Y_l + Y_r \\right )\"\/>. \u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e:<br \/>  <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?X_l\\cdot&amp;space;Y_r&amp;space;&amp;plus;&amp;space;X_r&amp;space;\\cdot&amp;space;Y_l&amp;space;=&amp;space;\\left&amp;space;(X_l&amp;space;&amp;plus;&amp;space;X_r&amp;space;\\right&amp;space;)\\cdot\\left(Y_l&amp;space;&amp;plus;&amp;space;Y_r&amp;space;\\right&amp;space;)&amp;space;-&amp;space;X_l\\cdot&amp;space;Y_l&amp;space;-&amp;space;X_r\\cdot&amp;space;Y_r\" title=\"X_l\\cdot Y_r + X_r \\cdot Y_l = \\left (X_l + X_r \\right )\\cdot\\left(Y_l + Y_r \\right ) - X_l\\cdot Y_l - X_r\\cdot Y_r\"\/><\/p>\n<p>  \u041c\u044b \u043e\u0431\u043e\u0448\u043b\u0438\u0441\u044c \u0442\u0440\u0435\u043c\u044f \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u0438 \u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u0440\u0435\u043c\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0435\u0442 \u0441\u043e\u043e\u0442\u043d\u043e\u0448\u0435\u043d\u0438\u044e[2]:<br \/>  <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?T(n)=3T\\left(\\frac{n}{2}\\right)&amp;plus;O(n)\" title=\"T(n)=3T\\left(\\frac{n}{2}\\right)+O(n)\"\/>,<br \/>  \u0447\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u0434\u0430\u0435\u0442 \u043e\u0431\u0449\u0443\u044e \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?O(n^{log_23})\" title=\"O(n^{log_23})\"\/>.<br \/>  \u041f\u0441\u0435\u0432\u043e\u0434\u043a\u043e\u0434 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b:  <\/p>\n<pre><code class=\"cpp\">Karatsuba_mul(X, Y):     \/\/ X, Y - \u0446\u0435\u043b\u044b\u0435 \u0447\u0438\u0441\u043b\u0430 \u0434\u043b\u0438\u043d\u044b n     n = max(\u0440\u0430\u0437\u043c\u0435\u0440 X, \u0440\u0430\u0437\u043c\u0435\u0440 Y)     \u0435\u0441\u043b\u0438 n = 1: \u0432\u0435\u0440\u043d\u0443\u0442\u044c X * Y     X_l = \u043b\u0435\u0432\u044b\u0435 n\/2 \u0446\u0438\u0444\u0440 X     X_r = \u043f\u0440\u0430\u0432\u044b\u0435 n\/2 \u0446\u0438\u0444\u0440 X     Y_l = \u043b\u0435\u0432\u044b\u0435 n\/2 \u0446\u0438\u0444\u0440 Y     Y_r = \u043f\u0440\u0430\u0432\u044b\u0435 n\/2 \u0446\u0438\u0444\u0440 Y     Prod1 = Karatsuba_mul(X_l, Y_l)     Prod2 = Karatsuba_mul(X_r, Y_r)     Prod3 = Karatsuba_mul(X_l + X_r, Y_l + Y_r)     \u0432\u0435\u0440\u043d\u0443\u0442\u044c Prod1 * 10 ^ n + (Prod3 - Prod1 - Prod2) * 10 ^ (n \/ 2) + Prod2 <\/code><\/pre>\n<p>  \u0418 \u043f\u0440\u0438\u043c\u0435\u0440 \u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0447\u0438\u0441\u043b\u0430\u0445, \u0447\u0442\u043e\u0431\u044b \u0437\u0430\u043a\u0440\u0435\u043f\u0438\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0440\u0430\u0431\u043e\u0442\u044b:<\/p>\n<pre><code class=\"cpp\">a = 12 b = 81  res = Karatsuba_mul(a, b):     \/\/ \u0440\u0430\u0437\u043c\u0435\u0440 a = \u0440\u0430\u0437\u043c\u0435\u0440 b = 2     n = max( \u0440\u0430\u0437\u043c\u0435\u0440 a, \u0440\u0430\u0437\u043c\u0435\u0440 b) \/\/ n = 2     X_l = 1, X_r = 2 \/\/ 1 | 2     Y_l = 8, Y_r = 1 \/\/ 8 | 1     Prod1 = Karatsuba_mul(1, 8) \/\/ Prod1 = 8     Prod2 = Karatsuba_mul(2, 1) \/\/ Prod2 = 2     Prod3 = Karatsuba_mul(3, 9) \/\/ Prod3 = 27     \u0432\u0435\u0440\u043d\u0443\u0442\u044c 8 * 10 ^ 2 + (27 - 2 - 8) * 10 + 2 ----------------------------------------------- res = 972 <\/code><\/pre>\n<p>  <\/p>\n<h1><anchor>\u0420\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/anchor><\/h1>\n<p>  \u0412\u043e\u0442 \u043c\u044b \u0438 \u0433\u043e\u0442\u043e\u0432\u044b \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u0442\u044c \u043a \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 C++. \u0412 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u044f \u043d\u0430\u0445\u043e\u0434\u0438\u043b \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0439, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0449\u0438\u0435 C-\u0441\u0442\u0438\u043b\u044c \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043a\u043e\u0434\u0430, \u0447\u0442\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0442\u0440\u0443\u0434\u043d\u044f\u0435\u0442 \u0447\u0442\u0435\u043d\u0438\u0435 \u0435\u0433\u043e \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0440\u0435\u0448\u0438\u043b \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044d\u0442\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0443\u043b\u0443\u0447\u0448\u0435\u043d\u0438\u044f \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0432 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0435 C++11. \u0414\u0430, \u044d\u0442\u043e \u0437\u0430\u043c\u0435\u0434\u043b\u0438\u0442 \u043a\u043e\u0434, \u043d\u043e \u0432\u0435\u0434\u044c \u0437\u0434\u0435\u0441\u044c \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u0432 \u043f\u0435\u0440\u0432\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0442\u0430 \u0434\u043b\u044f \u043f\u043e\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0438 \u0443\u0434\u043e\u0431\u043e\u0447\u0438\u0442\u0430\u0435\u043c\u043e\u0441\u0442\u044c.<\/p>\n<ol>\n<li><strong>\u0425\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430. <\/strong>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u0432\u0435\u043a\u0442\u043e\u0440 \u0446\u0435\u043b\u044b\u0445 \u0447\u0438\u0441\u0435\u043b, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0432\u0441\u0435, \u0438\u0437\u0443\u0447\u0430\u044e\u0449\u0438\u0435 C++, \u0437\u043d\u0430\u043a\u043e\u043c\u044b. \u0414\u043b\u0438\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u0431\u0443\u0434\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c \u0432 \u0441\u0442\u0440\u043e\u043a\u0443 \u0438 \u0441 \u043a\u043e\u043d\u0446\u0430 \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c \u043d\u0430 \u0440\u0430\u0437\u0440\u044f\u0434\u044b, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u043e\u0439 \u0431\u0430\u0437\u0435 (\u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u2014 10).<br \/>  \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430 \u0432\u0445\u043e\u0434 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0447\u0438\u0441\u043b\u043e:<br \/> \n<pre><code class=\"cpp\">123456789000000000 <\/code><\/pre>\n<p>  \u0412 \u043d\u0430\u0448\u0435\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435 \u043e\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u0441\u044f \u0442\u0430\u043a:<\/p>\n<pre><code class=\"cpp\">|0|1|2|3|4|5|...|n|  0 0 0 0 0 0 ... 1 <\/code><\/pre>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 get_number()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">vector&lt;int&gt; get_number(istream& is) {     string snum;     vector&lt;int&gt; vnum;     \/\/ \u0438\u043d\u0434\u0438\u043a\u0430\u0442\u043e\u0440 \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432     unsigned int dig = 1;     int n = 0;          is &gt;&gt; snum;          for (auto it = snum.crbegin(); it != snum.crend(); ++it) {         n += (*it - '0') * dig;         dig *= dig_size;         \/\/ \u0435\u0441\u043b\u0438 \u0440\u0430\u0437\u0440\u044f\u0434 \u0440\u0430\u0432\u0435\u043d \u0431\u0430\u0437\u0435, \u0442\u043e \u0432\u044b\u0442\u0430\u043b\u043a\u0438\u0432\u0430\u0435\u043c \u0447\u0438\u0441\u043b\u043e \u0432 \u0432\u0435\u043a\u0442\u043e\u0440         if (dig == base) {             vnum.push_back(n);             n = 0;             dig = 1;         }     }          if (n != 0) {         vnum.push_back(n);     }          return vnum; } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/li>\n<li><strong>\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0435 \u0447\u0438\u0441\u043b\u0430. <\/strong>\u041d\u0430 \u0432\u0445\u043e\u0434 \u0443 \u043d\u0430\u0441 \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0441\u0442\u0443\u043f\u0430\u0442\u044c \u0447\u0438\u0441\u043b\u0430 \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b \u0438 \u043d\u0430\u043c \u0434\u043b\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0436\u0435\u043b\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u043e\u0434\u043d\u043e\u0439 \u0438 \u0442\u043e\u0439 \u0436\u0435 \u0434\u043b\u0438\u043d\u0435, \u043a\u0440\u0430\u0442\u043d\u043e\u0439 2 (\u0442\u0430\u043a \u043a\u0430\u043a \u043c\u044b \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0435\u043c \u043d\u0430\u0448\u0438 \u00ab\u0434\u043b\u0438\u043d\u043d\u044b\u0435\u00bb \u0447\u0438\u0441\u043b\u0430 \u043f\u043e\u043f\u043e\u043b\u0430\u043c). \u041d\u0430\u043f\u0438\u0448\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e <strong>extend_vec()<\/strong>, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0431\u0440\u0430\u043b\u0430 \u0431\u044b \u043d\u0430\u0448 \u0432\u0435\u043a\u0442\u043e\u0440 \u0438 \u0443\u0434\u043b\u0438\u043d\u044f\u043b\u0430 \u0435\u0433\u043e \u043a\u0430\u043a-\u0442\u043e \u0442\u0430\u043a:\n<pre><code class=\"cpp\">first = {4}; \/\/ 4; size = 1 second = {3, 2, 1} \/\/ 123; size = 3 int n = max(first.size(), second.size());  extend_vec(first, n); \/\/ \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c 3 \u043d\u0443\u043b\u044f extend_vec(second, n); \/\/ \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c 1 \u043d\u043e\u043b\u044c <\/code><\/pre>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 extend_vec()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">void extend_vec(vector&lt;int&gt;& v, int len) {     \/\/ \u0423\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c len \u0434\u043e \u043a\u0440\u0430\u0442\u043d\u043e\u0441\u0442\u0438 \u0441\u0442\u0435\u043f\u0435\u043d\u0438 \u0434\u0432\u043e\u0439\u043a\u0438     while (len & (len - 1)) {         ++len;     }          len -= v.size();          while (len--) {         v.push_back(0);     } } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/li>\n<li><strong>\u0423\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435. <\/strong>\u0417\u0434\u0435\u0441\u044c \u0441\u0442\u043e\u0438\u0442 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0442\u043e\u0438\u0442 \u0441\u0434\u0435\u043b\u0430\u0442\u044c. \u041c\u044b \u043d\u0435 \u0431\u0443\u0434\u0435\u043c \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0438 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u044c \u0438\u0445 \u0432 \u0441\u0442\u0430\u0440\u0448\u0438\u0435 \u0440\u0430\u0437\u0440\u044f\u0434\u0430 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u0440\u0435\u043a\u0443\u0440\u0441\u0438\u0432\u043d\u043e\u043c \u0432\u044b\u0437\u043e\u0432\u0435, \u0430 \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u044d\u0442\u043e \u0432 \u043a\u043e\u043d\u0446\u0435. \u0418 \u0434\u043b\u044f \u043f\u0435\u0440\u0435\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b \u0441 \u0434\u043b\u0438\u043d\u043d\u043e\u0439 \u043c\u0435\u043d\u044c\u0448\u0435, \u0441\u043a\u0430\u0436\u0435\u043c, 128 \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0438\u0432\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c, \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435\u0439 \u043a\u043e\u043d\u0441\u0442\u0430\u043d\u0442\u043e\u0439, \u0447\u0435\u043c \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b.\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 naive_mul()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">vector&lt;int&gt; naive_mul(const vector&lt;int&gt;& x, const vector&lt;int&gt;& y) {     int len = x.size();     vector&lt;int&gt; res(2 * len);          for (int i = 0; i &lt; len; ++i) {         for (int j = 0; j &lt; len; ++j) {             res[i + j] += x[i] * y[j];         }     }          return res; } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 karatsuba_mul()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">vector&lt;int&gt; karatsuba_mul(const vector&lt;int&gt;& x, const vector&lt;int&gt;& y) {     int len = x.size();         vector&lt;int&gt; res(2 * len);          if (len &lt;= len_f_naive) {         return naive_mul(x, y);     }          int k = len \/ 2;          \/\/ \u041e\u0442\u0434\u0435\u043b\u044f\u0435\u043c \u043b\u0435\u0432\u0443\u044e \u0438 \u043f\u0440\u0430\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0447\u0438\u0441\u043b\u0430     vector&lt;int&gt; Xr {x.begin(), x.begin() + k};     vector&lt;int&gt; Xl {x.begin() + k, x.end()};     vector&lt;int&gt; Yr {y.begin(), y.begin() + k};     vector&lt;int&gt; Yl {y.begin() + k, y.end()};          vector&lt;int&gt; P1 = karatsuba_mul(Xl, Yl);     vector&lt;int&gt; P2 = karatsuba_mul(Xr, Yr);              \/\/ \u0421\u0447\u0438\u0442\u0430\u0435\u043c \u0441\u0443\u043c\u043c\u0443 Xl + Xr \u0438 Yl + Yr     vector&lt;int&gt; Xlr(k);     vector&lt;int&gt; Ylr(k);          for (int i = 0; i &lt; k; ++i) {         Xlr[i] = Xl[i] + Xr[i];         Ylr[i] = Yl[i] + Yr[i];     }          vector&lt;int&gt; P3 = karatsuba_mul(Xlr, Ylr);          \/\/ \u0421\u0447\u0438\u0442\u0430\u0435\u043c P3 - P1 - P2     for (int i = 0; i &lt; len; ++i) {         P3[i] -= P2[i] + P1[i];     }          \/\/ \u0424\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442     \/\/ P2 - \u043c\u043b\u0430\u0434\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c     for (int i = 0; i &lt; len; ++i) {         res[i] = P2[i];     }     \/\/ P1 - \u0441\u0442\u0430\u0440\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c     for (int i = len; i &lt; 2 * len; ++i) {         res[i] = P1[i - len];     }     \/\/ P3 - P1 - P2 \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0432 \u0441\u0435\u0440\u0435\u0434\u0438\u043d\u0443 \u043d\u0430\u0448\u0435\u0433\u043e \u0447\u0438\u0441\u043b\u0430     for (int i = k; i &lt; len + k; ++i) {         res[i] += P3[i - k];     }          return res; } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/li>\n<li><strong>\u041d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f.<\/strong> \u041e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u044b \u0438 \u043c\u043e\u0436\u043d\u043e \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 (\u0438\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439).\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 finalize()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">void finalize(vector&lt;int&gt;& res) {     for (int i = 0; i &lt; res.size(); ++i) {         res[i + 1] += res[i] \/ base;         res[i] %= base;     } } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0418 \u0432\u044b\u0432\u043e\u0434\u0438\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u0434\u043e\u043f\u043e\u043b\u043d\u044f\u044f \u043d\u0443\u043b\u044f\u043c\u0438 \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0430\u0437\u044b, \u0431\u043e\u043b\u044c\u0448\u0435\u0439, \u0447\u0435\u043c 10.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u041a\u043e\u0434 \u0444\u0443\u043d\u043a\u0446\u0438\u0438 print_res()<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"cpp\">void print_res(const vector&lt;int&gt;& v, ostream& os) {     auto it = v.crbegin();          \/\/ Passing leading zeroes     while (!*it) {         ++it;     }          while (it != v.crend()) {         int z = -1;         int num = *it;                  if (num == 0) {             num += 1;         }                  if (num &lt; add_zero) {             z = 1;                                   while ((num *= dig_size) &lt; add_zero) {                 ++z;             }         }                  if (z &gt; 0) {             while (z--) {                 os &lt;&lt; '0';             }         }         os &lt;&lt; *it++;     }          os &lt;&lt; endl; } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/li>\n<\/ol>\n<p>  <\/p>\n<h1><anchor>\u0421\u0440\u0430\u0432\u043d\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0440\u0430\u0431\u043e\u0442\u044b<\/anchor> \u043d\u0430\u0438\u0432\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u0438 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430 \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b<\/h1>\n<p>  \u0414\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f Clang++ \u0441 \u043a\u043b\u044e\u0447\u043e\u043c -O3. \u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u043b\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0447\u0438\u0441\u0435\u043b \u0441 \u0431\u0430\u0437\u043e\u0439 10 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u044b \u043d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 1.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f (\u0431\u0430\u0437\u0430 10)<\/b><\/p>\n<div class=\"spoiler_text\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/364\/ef4\/456\/364ef44568524553b225b1aea2a500fa.jpg\"\/><br \/>  <i>\u0420\u0438\u0441\u0443\u043d\u043e\u043a 1. \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0439 10<\/i>  <\/div>\n<\/div>\n<p>  \u0412\u0438\u0434\u043d\u043e, \u0447\u0442\u043e \u043d\u0430\u0438\u0432\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043e\u0449\u0443\u0442\u0438\u043c\u043e \u0437\u0430\u043c\u0435\u0434\u043b\u044f\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u0432\u0445\u043e\u0434\u043d\u044b\u0445 \u0447\u0438\u0441\u043b\u0430\u0445, \u0434\u043b\u0438\u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0431\u043e\u043b\u044c\u0448\u0435 <img decoding=\"async\" src=\"https:\/\/latex.codecogs.com\/gif.latex?2\\cdot&amp;space;10^5\" title=\"2\\cdot 10^5\"\/>. <br \/>  \u041d\u0430 \u0440\u0438\u0441\u0443\u043d\u043a\u0435 2 \u043f\u043e\u043a\u0430\u0437\u0430\u043d \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0440\u0430\u0431\u043e\u0442\u044b \u0442\u0435\u0445 \u0436\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432, \u043d\u043e \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0435\u0439. \u0422\u0435\u043f\u0435\u0440\u044c \u0434\u043b\u0438\u043d\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0432\u0435\u043a\u0442\u043e\u0440 \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0431\u0430\u0437\u044b 100, \u0447\u0442\u043e \u0434\u0430\u0435\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0439 \u043f\u0440\u0438\u0440\u043e\u0441\u0442 \u0432 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f (\u0431\u0430\u0437\u0430 100)<\/b><\/p>\n<div class=\"spoiler_text\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/files\/518\/432\/ece\/518432ecea224e3183784c6270a33e88.jpg\"\/><br \/>  <i>\u0420\u0438\u0441\u0443\u043d\u043e\u043a 2. \u0412\u0440\u0435\u043c\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0441 \u0431\u0430\u0437\u043e\u0439 100<\/i>  <\/div>\n<\/div>\n<p>  <\/p>\n<h1><anchor>\u0412\u044b\u0432\u043e\u0434\u044b<\/anchor><\/h1>\n<p>  \u0412\u043e\u0442 \u0438 \u0432\u0441\u0435, \u043c\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043b\u0438 \u0441 \u0432\u0430\u043c \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438 \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. \u041d\u0430\u0434\u0435\u044e\u0441\u044c, \u044d\u0442\u043e \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0438 \u043c\u043d\u043e\u0433\u0438\u0435 \u043d\u043e\u0432\u0438\u0447\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442 \u0438\u0437\u0443\u0447\u0435\u043d\u0438\u0435 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u043e\u0432 \u043d\u0435 \u0431\u0443\u0434\u0443\u0442 \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u043f\u0430\u0434\u0430\u0442\u044c \u0432 \u0441\u0442\u0443\u043f\u043e\u0440 (\u043d\u0443 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b \u043e\u043d \u0443 \u043c\u0435\u043d\u044f \u0441 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0440\u0430\u0437\u0430 \u0432 \u0441\u0432\u043e\u0435 \u0432\u0440\u0435\u043c\u044f).<\/p>\n<p>  \u0415\u0449\u0451 \u0435\u0441\u0442\u044c \u043a\u0443\u0434\u0430 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u0443\u044e \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e:  <\/p>\n<ul>\n<li>\u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0431\u0430\u0437\u0443 \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u0447\u0438\u0441\u043b\u0430 \u0432 \u0432\u0435\u043a\u0442\u043e\u0440\u0435. \u0421\u0435\u0439\u0447\u0430\u0441 \u043d\u043e\u0440\u043c\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0447\u0438\u0441\u043b\u0430 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0432 \u0441\u0430\u043c\u043e\u043c \u043a\u043e\u043d\u0446\u0435, \u0447\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0445 \u0442\u0438\u043f\u043e\u0432 \u0432 C++. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441\u0442\u043e\u0438\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0447\u0438\u0441\u043b\u0430 \u0432 \u043c\u0430\u0441\u0441\u0438\u0432\u0435\/\u0432\u0435\u043a\u0442\u043e\u0440\u0435 \u0442\u0438\u043f\u0430 <i>unsigned long long<\/i> \u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u044f\u0442\u044c \u043e\u0441\u0442\u0430\u0442\u043a\u0438 \u0441 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430\u043c\u0438 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f. \u041b\u0438\u0431\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u00ab\u0434\u043b\u0438\u043d\u043d\u043e\u0435\u00bb \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u0442\u0430\u0442\u043a\u0430.<\/li>\n<li>\u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u0432\u0435\u043a\u0442\u043e\u0440\u043e\u0432 \u0432 \u043f\u043e\u043b\u044c\u0437\u0443 \u043c\u0430\u0441\u0441\u0438\u0432\u043e\u0432 \u0438 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0432\u044b\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043b\u0435\u0432\u043e\u0439 \u0438 \u043f\u0440\u0430\u0432\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0447\u0438\u0441\u043b\u0430 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u0438\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432.<\/li>\n<\/ul>\n<p>  \u041d\u0430 \u044d\u0442\u043e\u043c \u0432\u0441\u0435, \u0432\u0441\u0435\u043c \u0441\u043f\u0430\u0441\u0438\u0431\u043e \u0437\u0430 \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u0435. <br \/>  \u0418\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u043f\u0440\u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u0438 \u0441\u0442\u0430\u0442\u044c\u0438, \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f <a href=\"https:\/\/github.com\/vpetrigo\/multiplication\">\u0437\u0434\u0435\u0441\u044c<\/a>.<\/p>\n<h3>\u0421\u043f\u0438\u0441\u043e\u043a \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u043e\u0439 \u043b\u0438\u0442\u0435\u0440\u0430\u0442\u0443\u0440\u044b<\/h3>\n<p>  <\/p>\n<ol>\n<li>\u0421. \u0414\u0430\u0441\u0433\u0443\u043f\u0442\u0430 \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b: \u041f\u0435\u0440\u0435\u0432\u043e\u0434 \u0441 \u0430\u043d\u0433\u043b\u0438\u0439\u0441\u043a\u043e\u0433\u043e \u0410. \u0421. \u041a\u0443\u043b\u0438\u043a\u043e\u0432\u0430 \u043f\u043e\u0434 \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u0435\u0439 \u0410. \u0428\u0435\u043d\u044f [\u0422\u0435\u043a\u0441\u0442] \/ \u0421. \u0414\u0430\u0441\u0433\u0443\u043f\u0442\u0430, \u0425. \u041f\u0430\u043f\u0430\u0434\u0438\u043c\u0438\u0442\u0440\u0438\u0443, \u0423. \u0412\u0430\u0437\u0438\u0440\u0430\u043d\u0438. -\u041c\u043e\u0441\u043a\u0432\u0430: \u041c\u0426\u041d\u041c\u041e, 2014 \u2014 320 \u0441.<\/li>\n<li>Karatsuba algorithm [\u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441] \/ Wikipedia \u2014 URL: <a href=\"https:\/\/en.wikipedia.org\/wiki\/Karatsuba_algorithm\">en.wikipedia.org\/wiki\/Karatsuba_algorithm<\/a><\/li>\n<li>\u0410. \u0421. \u041a\u0443\u043b\u0438\u043a\u043e\u0432 \u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b \u0438 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445 [\u042d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u0439 \u0440\u0435\u0441\u0443\u0440\u0441] \/ \u0410. \u0421. \u041a\u0443\u043b\u0438\u043a\u043e\u0432 \u2014 URL: <a href=\"https:\/\/stepic.org\/course\/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC%D1%8B-%D0%B8-%D1%81%D1%82%D1%80%D1%83%D0%BA%D1%82%D1%83%D1%80%D1%8B-%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85-63\/syllabus\">https:\/\/stepic.org\/course\/\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u044b-\u0438-\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b-\u0434\u0430\u043d\u043d\u044b\u0445-63\/syllabus<\/a><\/li>\n<\/ol>\n<div class=\"clear\"><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/262705\/\"> http:\/\/habrahabr.ru\/post\/262705\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>             \u0425\u043e\u0447\u0443 \u0432 \u043e\u0447\u0435\u0440\u0435\u0434\u043d\u043e\u0439 \u0440\u0430\u0437 \u0437\u0430\u0442\u0440\u043e\u043d\u0443\u0442\u044c \u043c\u0435\u0442\u043e\u0434 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0441 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u0430 C++11. \u0414\u0430\u043d\u043d\u044b\u0439 \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u043d\u0435\u043e\u0434\u043d\u043e\u043a\u0440\u0430\u0442\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0441\u044f \u0437\u0434\u0435\u0441\u044c (<a href=\"http:\/\/habrahabr.ru\/post\/124258\/\">\u00ab\u0423\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u043d\u043d\u044b\u0445 \u0447\u0438\u0441\u0435\u043b \u043c\u0435\u0442\u043e\u0434\u043e\u043c \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b\u00bb<\/a>, <a href=\"http:\/\/habrahabr.ru\/post\/121950\/\">\u00ab\u0410\u043b\u0433\u043e\u0440\u0438\u0442\u043c \u041a\u0430\u0440\u0430\u0446\u0443\u0431\u044b \u0434\u043b\u044f \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u044f \u0434\u0432\u0443\u0445 \u0447\u0438\u0441\u0435\u043b\u00bb<\/a>), \u043d\u043e \u0432\u0438\u0434\u0438\u043c\u043e \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u044f \u043d\u0435 \u0443\u043c\u0435\u044e \u0438\u0445 \u0433\u043e\u0442\u043e\u0432\u0438\u0442\u044c, \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0441 \u0447\u0438\u0441\u043b\u0430\u043c\u0438 \u0440\u0430\u0437\u043d\u043e\u0439 \u0434\u043b\u0438\u043d\u044b, \u0430 \u0432\u0442\u043e\u0440\u043e\u0439 \u0434\u0435\u043b\u0430\u0435\u0442 \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c \u0442\u043e, \u0447\u0442\u043e \u0431\u044b\u043b\u043e \u043d\u0443\u0436\u043d\u043e.<\/p>\n<p>  \u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u043d\u0435 \u0443\u0441\u0442\u0430\u043b \u043e\u0442 \u044d\u0442\u043e\u0439 \u0437\u0430\u0435\u0437\u0436\u0435\u043d\u043d\u043e\u0439 \u0442\u0435\u043c\u044b, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0432\u0441\u0435\u0445, \u043a\u0442\u043e \u0438\u0441\u043f\u044b\u0442\u044b\u0432\u0430\u0435\u0442 \u0442\u0440\u0443\u0434\u043d\u043e\u0441\u0442\u0438 \u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0435\u0439 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0433\u043e, \u043d\u043e \u043e\u0447\u0435\u043d\u044c \u044d\u0444\u0444\u0435\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0430\u043b\u0433\u043e\u0440\u0438\u0442\u043c\u0430, \u043f\u0440\u043e\u0448\u0443 \u0447\u0438\u0442\u0430\u0442\u044c \u0434\u0430\u043b\u044c\u0448\u0435.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-261550","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/261550","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=261550"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/261550\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=261550"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=261550"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=261550"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}