{"id":819,"date":"2013-09-07T21:15:07","date_gmt":"2013-09-07T13:15:07","guid":{"rendered":"http:\/\/www.shuizilong.com\/house\/?p=819"},"modified":"2016-08-24T21:08:49","modified_gmt":"2016-08-24T13:08:49","slug":"poi-xiii-stage-3-problem-crystals","status":"publish","type":"post","link":"https:\/\/www.shuizilong.com\/house\/archives\/poi-xiii-stage-3-problem-crystals\/","title":{"rendered":"POI XIII Stage 3. Problem Crystals"},"content":{"rendered":"<h3>Brief description: <\/h3>\n<p>\u7ed9\u5b9a\u4e00\u4e2a n \u4e2a\u5143\u7d20\u7684\u6570\u7ec4 {ai}, \u95ee\u5b58\u5728\u591a\u5c11\u7ec4 {xi, xi <= ai &#038;&#038; \u6240\u6709 xi \u7684 xor \u548c \u7b49\u4e8e 0}\u3002\u3002\u3002\n( n <= 50 .. )\n<!--more--><\/p>\n<p>\u4ea6\u6216\u548c\u7b49\u4e8e 0 \u548c\u7b49\u4e8e k \u7684\u7248\u672c\u51e0\u4e4e\u6ca1\u6709\u533a\u522b\uff0c\u8ba8\u8bba\u524d\u8005\u3002<\/p>\n<p>\u8fd9\u7c7b\u9898\u76ee\u7684\u89e3\u6cd5\u662f\u4ece\u9ad8\u5230\u4f4e\u6309\u4f4d\u5206\u9636\u6bb5\u7ec4\u5408 DP .. .<br \/>\n\u6211\u4eec\u7684\u76ee\u7684\u662f\uff0c\u5728\u6bcf\u8f6e\u7684 DP \u8fc7\u540e\uff0c\u8fd9\u4e00\u4f4d\u4e0a\u6240\u6709\u81f3\u5c11 Skip \u4e00\u4f4d\u7684\u7ec4\u5408\uff0c\u5168\u90e8\u88ab\u8ba1\u6570\uff0c\u8fd9\u6837\u505a\u4e4b\u540e\uff0c\u5269\u4e0b\u7684\u6240\u6709\u8fd8\u6ca1\u6709\u88ab\u8ba1\u6570\u7684\u60c5\u51b5\uff08\u6ca1\u6709\u53d1\u751f Skip\uff09\u5c31\u4f1a\u5f62\u6210\u4e00\u4e2a\u7ed3\u6784\u76f8\u540c\u7684\u5b50\u95ee\u9898 &#8230;<\/p>\n<p>\u989d\uff0c\u8fd8\u6ca1\u6709\u5b9a\u4e49 Skip &#8230;<\/p>\n<p>\u6211\u4eec\u8ba8\u8bba\u5f53\u524d\u626b\u63cf\u7684\u662f\u6700\u9ad8\u4f4d &#8230; \u5bf9\u4e8e\u90a3\u4e9b\u5728\u8fd9\u4e00\u4f4d\u4e0a\u662f 1 \u7684\u5143\u7d20\uff0c\u8fd9\u4e9b\u5143\u7d20\u6709\u4e24\u79cd\u51b3\u7b56\uff1a<br \/>\n\u5206\u522b \u662f\u53d6 1 \u548c\u53d6 0\uff0c\u6211\u4eec\u79f0\u90a3\u4e9b\u542b\u6709 1 \u7684\u5143\u7d20\uff0c\u53d6 0 \u7684\u51b3\u7b56\u4e3a \u6298\u8d8a (Skip) &#8230;<\/p>\n<p>\u90a3\u4e48\u5bf9\u4e8e\u5f53\u524d\u7b2c i \u4f4d\uff0c\u626b\u63cf\u4e86 j \u4e2a\u6570\u5b57\uff0c\u6211\u4eec\u8bbe\u8ba1\u72b6\u6001 f[0], f[1], f[2] \u5206\u522b\u4e3a<br \/>\n\u4ece\u672a\u53d1\u751f\u8fc7 \u6298\u8d8a \u3001\u53d1\u751f\u8fc7\u5947\u6570\u6b21 \u6298\u8d8a\u3001\u548c\u53d1\u751f\u8fc7\u5076\u6570\u6b21 \u6298\u8d8a \u4e14\u4e0d\u5305\u62ec f[0]\u3002<\/p>\n<p>\u5206\u7c7b\u8ba8\u8bba dp \u3002\u3002\u3002<\/p>\n<pre class=\"brush: cpp; light: false; title: ; toolbar: true; notranslate\" title=\"\">\r\n#define c ((a&#x5B;j] &amp; _U(i)) + 1)\r\n#define g (1 &lt;&lt; i)\r\n \r\n\u2026\r\n \r\n        REP(j, n){\r\n            if (_1(a&#x5B;j], i)) {\r\n                int w1 = sum(f&#x5B;0], pdt(f&#x5B;2], g)), w2 = pdt(f&#x5B;1], g); t ^= 1;\r\n                MUL(f&#x5B;0], c), MUL(f&#x5B;1], c), MUL(f&#x5B;2], c);\r\n                INC(f&#x5B;1], w1), INC(f&#x5B;2], w2);\r\n            }\r\n            else {\r\n                MUL(f&#x5B;0], c), MUL(f&#x5B;1], c), MUL(f&#x5B;2], c);\r\n            }\r\n        }\r\n \r\n\u2026\r\n<\/pre>\n<p>\u4e4b\u540e\uff0c\u6211\u4eec\u8003\u8651\u542b\u6709 1 \u7684\u4e2a\u6570\u7684\u5947\u5076\u6027\uff0c<br \/>\n\u5982\u679c\u542b\u6709\u5947\u6570\u4e2a1\uff0c\u90a3\u4e48\u6211\u4eec\u524d\u9762\u6240\u8bf4\u6ca1\u6709\u53d1\u751f\u8fc7\u4e00\u6b21 \u6298\u8d8a (Skip) \u7684\u60c5\u51b5\u5c31\u4e0d\u4f1a\u51fa\u73b0\u5728\u8ba1\u6570\u65b9\u6848\u4e2d\uff0c\u56e0\u6b64\u76f4\u63a5\u8df3\u51fa\u3002<br \/>\n\u6bcf\u4e00\u4f4d\u7684\u590d\u6742\u5ea6\u4e3a O(n) \uff0c\u603b\u7684\u590d\u6742\u5ea6\u4e3a O(nb)\uff0cb \u8868\u5143\u7d20\u7684\u4e8c\u8fdb\u5236\u4f4d\u6570 &#8230; (\u6700\u540e\u8fb9\u754c\u5904\u522b\u5fd8\u4e86\u6240\u6709\u5143\u7d20\u90fd\u4e3a 0 \u7684\u8bdd\u4e5f\u662f\u4e00\u7ec4\u89e3 .. .)<\/p>\n<p>&#8230;<br \/>\n.<br \/>\n.<\/p>\n<p>\uff08\u53e6\uff0c\u63a8\u516c\u5f0f\u7684\u8fc7\u7a0b\u4e2d\u8fd8\u6709\u4e00\u4e2a\u96be\u70b9\uff0c\u5177\u4f53\u7684\u8bf4\u6765\u662f\u8fd9\u6837\uff0c\u5bf9\u4e8e\u5f53\u524d\u626b\u63cf\u5230\u7b2c i \u4f4d\uff0c\u4e00\u4e2a\u53d1\u751f\u4e86 k \u6b21 \u6298\u8d8a \u7684\u72b6\u6001\uff0c\u662f\u9700\u8981\u4fdd\u8bc1 (i, 0] \u4f4d\u4e0a\u7684\u4ea6\u6216\u548c\u4e3a 0 \u7684\u3002<br \/>\n\u56e0\u4e3a\u53d1\u751f \u6298\u8d8a \u7684\u4f4d\u7f6e\u4e4b\u540e\u7684\u4e8c\u8fdb\u5236\u4f4d\u53ef\u4ee5\u4efb\u610f\u7ec4\u5408\uff0c\u6240\u4ee5\u5982\u679c\u56fa\u5b9a\u4e86\u5176\u4e2d\u7684\u4efb\u610f k-1 \u4e2a\u5143\u7d20\u7684\u72b6\u6001\uff0c\u603b\u53ef\u4ee5\u8bbe\u7f6e\u4e00\u79cd\u7b2c k \u4e2a\u5143\u7d20\u7684\u72b6\u6001\uff0c\u4f7f\u5f97 (i, 0] \u4f4d\u4e0a\u7684\u4ea6\u6216\u548c\u4e3a 0\uff0c\u8fd9\u4e5f\u662f\u7ec4\u5408 dp \u53ef\u4ee5\u594f\u6548\u7684\u4f9d\u636e\u3002\uff09<\/p>\n<style>.gist table { margin-bottom: 0; }<\/style>\n<div style=\"tab-size: 8\" id=\"gist6475453\" class=\"gist\">\n<div class=\"gist-file\" translate=\"no\" data-color-mode=\"light\" data-light-theme=\"light\">\n<div class=\"gist-data\">\n<div class=\"js-gist-file-update-container js-task-list-container\">\n<div id=\"file-crystals-cpp\" class=\"file my-2\">\n<div itemprop=\"text\"\n      class=\"Box-body p-0 blob-wrapper data type-c  \"\n      style=\"overflow: auto\" tabindex=\"0\" role=\"region\"\n      aria-label=\"Crystals.cpp content, created by lychees on 01:14PM on September 07, 2013.\"\n    ><\/p>\n<div class=\"js-check-hidden-unicode js-blob-code-container blob-code-content\">\n<p>  <template class=\"js-file-alert-template\"><\/p>\n<div data-view-component=\"true\" class=\"flash flash-warn flash-full d-flex flex-items-center\">\n  <svg aria-hidden=\"true\" data-component=\"Octicon\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n    <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"><\/path>\n<\/svg><br \/>\n    <span><br \/>\n      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.<br \/>\n      <a class=\"Link--inTextBlock\" href=\"https:\/\/github.co\/hiddenchars\" target=\"_blank\">Learn more about bidirectional Unicode characters<\/a><br \/>\n    <\/span><\/p>\n<div data-view-component=\"true\" class=\"flash-action\">        <a href=\"{{ revealButtonHref }}\" data-view-component=\"true\" class=\"btn-sm btn\">    Show hidden characters<br \/>\n<\/a>\n<\/div>\n<\/div>\n<p><\/template><br \/>\n<template class=\"js-line-alert-template\"><br \/>\n  <span aria-label=\"This line has hidden Unicode characters\" data-view-component=\"true\" class=\"line-alert tooltipped tooltipped-e\"><br \/>\n    <svg aria-hidden=\"true\" data-component=\"Octicon\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n    <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"><\/path>\n<\/svg><br \/>\n<\/span><\/template><\/p>\n<table data-hpc class=\"highlight tab-size js-file-line-container\" data-tab-size=\"4\" data-paste-markdown-skip data-tagsearch-path=\"Crystals.cpp\">\n<tr>\n<td id=\"file-crystals-cpp-L1\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"1\"><\/td>\n<td id=\"file-crystals-cpp-LC1\" class=\"blob-code blob-code-inner js-file-line\">\/* &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;. *\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L2\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"2\"><\/td>\n<td id=\"file-crystals-cpp-LC2\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L3\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"3\"><\/td>\n<td id=\"file-crystals-cpp-LC3\" class=\"blob-code blob-code-inner js-file-line\">\/** Header **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L4\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"4\"><\/td>\n<td id=\"file-crystals-cpp-LC4\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L5\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"5\"><\/td>\n<td id=\"file-crystals-cpp-LC5\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;iostream&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L6\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"6\"><\/td>\n<td id=\"file-crystals-cpp-LC6\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;iomanip&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L7\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"7\"><\/td>\n<td id=\"file-crystals-cpp-LC7\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;sstream&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L8\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"8\"><\/td>\n<td id=\"file-crystals-cpp-LC8\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;string&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L9\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"9\"><\/td>\n<td id=\"file-crystals-cpp-LC9\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;vector&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L10\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"10\"><\/td>\n<td id=\"file-crystals-cpp-LC10\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;cstdio&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L11\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"11\"><\/td>\n<td id=\"file-crystals-cpp-LC11\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;cstring&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L12\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"12\"><\/td>\n<td id=\"file-crystals-cpp-LC12\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;cmath&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L13\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"13\"><\/td>\n<td id=\"file-crystals-cpp-LC13\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;algorithm&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L14\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"14\"><\/td>\n<td id=\"file-crystals-cpp-LC14\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;bitset&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L15\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"15\"><\/td>\n<td id=\"file-crystals-cpp-LC15\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;list&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L16\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"16\"><\/td>\n<td id=\"file-crystals-cpp-LC16\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;set&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L17\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"17\"><\/td>\n<td id=\"file-crystals-cpp-LC17\" class=\"blob-code blob-code-inner js-file-line\">#include &lt;map&gt;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L18\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"18\"><\/td>\n<td id=\"file-crystals-cpp-LC18\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L19\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"19\"><\/td>\n<td id=\"file-crystals-cpp-LC19\" class=\"blob-code blob-code-inner js-file-line\">using namespace std;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L20\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"20\"><\/td>\n<td id=\"file-crystals-cpp-LC20\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L21\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"21\"><\/td>\n<td id=\"file-crystals-cpp-LC21\" class=\"blob-code blob-code-inner js-file-line\">\/** Repeat **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L22\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"22\"><\/td>\n<td id=\"file-crystals-cpp-LC22\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L23\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"23\"><\/td>\n<td id=\"file-crystals-cpp-LC23\" class=\"blob-code blob-code-inner js-file-line\">#define REP(I, N) for (int I=0;I&lt;int(N);++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L24\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"24\"><\/td>\n<td id=\"file-crystals-cpp-LC24\" class=\"blob-code blob-code-inner js-file-line\">#define FOR(I, A, B) for (int I=int(A);I&lt;int(B);++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L25\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"25\"><\/td>\n<td id=\"file-crystals-cpp-LC25\" class=\"blob-code blob-code-inner js-file-line\">#define DWN(I, B, A) for (int I=int(B-1);I&gt;=int(A);&#8211;I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L26\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"26\"><\/td>\n<td id=\"file-crystals-cpp-LC26\" class=\"blob-code blob-code-inner js-file-line\">#define REP_1(I, N) for (int I=1;I&lt;=int(N);++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L27\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"27\"><\/td>\n<td id=\"file-crystals-cpp-LC27\" class=\"blob-code blob-code-inner js-file-line\">#define FOR_1(I, A, B) for (int I=int(A);I&lt;=int(B);++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L28\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"28\"><\/td>\n<td id=\"file-crystals-cpp-LC28\" class=\"blob-code blob-code-inner js-file-line\">#define DWN_1(I, B, A) for (int I=int(B);I&gt;=int(A);&#8211;I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L29\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"29\"><\/td>\n<td id=\"file-crystals-cpp-LC29\" class=\"blob-code blob-code-inner js-file-line\">#define REP_C(I, N) for (int N____=int(N),I=0;I&lt;N____;++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L30\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"30\"><\/td>\n<td id=\"file-crystals-cpp-LC30\" class=\"blob-code blob-code-inner js-file-line\">#define FOR_C(I, A, B) for (int B____=int(B),I=A;I&lt;B____;++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L31\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"31\"><\/td>\n<td id=\"file-crystals-cpp-LC31\" class=\"blob-code blob-code-inner js-file-line\">#define DWN_C(I, B, A) for (int A____=int(A),I=B-1;I&gt;=A____;&#8211;I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L32\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"32\"><\/td>\n<td id=\"file-crystals-cpp-LC32\" class=\"blob-code blob-code-inner js-file-line\">#define REP_1_C(I, N) for (int N____=int(N),I=1;I&lt;=N____;++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L33\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"33\"><\/td>\n<td id=\"file-crystals-cpp-LC33\" class=\"blob-code blob-code-inner js-file-line\">#define FOR_1_C(I, A, B) for (int B____=int(B),I=A;I&lt;=B____;++I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L34\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"34\"><\/td>\n<td id=\"file-crystals-cpp-LC34\" class=\"blob-code blob-code-inner js-file-line\">#define DWN_1_C(I, B, A) for (int A____=int(A),I=B;I&gt;=A____;&#8211;I)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L35\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"35\"><\/td>\n<td id=\"file-crystals-cpp-LC35\" class=\"blob-code blob-code-inner js-file-line\">#define DO(N) while(N&#8211;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L36\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"36\"><\/td>\n<td id=\"file-crystals-cpp-LC36\" class=\"blob-code blob-code-inner js-file-line\">#define DO_C(N) int N____ = N; while(N____&#8211;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L37\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"37\"><\/td>\n<td id=\"file-crystals-cpp-LC37\" class=\"blob-code blob-code-inner js-file-line\">#define TO(i, a, b) int s_=a&lt;b?1:-1,b_=b+s_;for(int i=a;i!=b_;i+=s_)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L38\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"38\"><\/td>\n<td id=\"file-crystals-cpp-LC38\" class=\"blob-code blob-code-inner js-file-line\">#define TO_1(i, a, b) int s_=a&lt;b?1:-1,b_=b;for(int i=a;i!=b_;i+=s_)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L39\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"39\"><\/td>\n<td id=\"file-crystals-cpp-LC39\" class=\"blob-code blob-code-inner js-file-line\">#define SQZ(I, J, A, B) for (int I=int(A),J=int(B)-1;I&lt;J;++I,&#8211;J)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L40\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"40\"><\/td>\n<td id=\"file-crystals-cpp-LC40\" class=\"blob-code blob-code-inner js-file-line\">#define SQZ_1(I, J, A, B) for (int I=int(A),J=int(B);I&lt;=J;++I,&#8211;J)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L41\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"41\"><\/td>\n<td id=\"file-crystals-cpp-LC41\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L42\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"42\"><\/td>\n<td id=\"file-crystals-cpp-LC42\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L43\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"43\"><\/td>\n<td id=\"file-crystals-cpp-LC43\" class=\"blob-code blob-code-inner js-file-line\">\/** Micro Mezzo Macro Flation &#8212; Overheated Economy **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L44\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"44\"><\/td>\n<td id=\"file-crystals-cpp-LC44\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L45\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"45\"><\/td>\n<td id=\"file-crystals-cpp-LC45\" class=\"blob-code blob-code-inner js-file-line\">#define ALL(A) A.begin(), A.end()<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L46\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"46\"><\/td>\n<td id=\"file-crystals-cpp-LC46\" class=\"blob-code blob-code-inner js-file-line\">#define CPY(A, B) memcpy(A, B, sizeof(A))<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L47\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"47\"><\/td>\n<td id=\"file-crystals-cpp-LC47\" class=\"blob-code blob-code-inner js-file-line\">#define INS(A, P, B) A.insert(A.begin() + P, B)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L48\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"48\"><\/td>\n<td id=\"file-crystals-cpp-LC48\" class=\"blob-code blob-code-inner js-file-line\">#define ERS(A, P) A.erase(A.begin() + P)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L49\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"49\"><\/td>\n<td id=\"file-crystals-cpp-LC49\" class=\"blob-code blob-code-inner js-file-line\">#define SRT(A) sort(ALL(A))<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L50\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"50\"><\/td>\n<td id=\"file-crystals-cpp-LC50\" class=\"blob-code blob-code-inner js-file-line\">#define BSC(A, X) find(ALL(A), X) \/\/ != A.end()<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L51\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"51\"><\/td>\n<td id=\"file-crystals-cpp-LC51\" class=\"blob-code blob-code-inner js-file-line\">#define SZ(A) int(A.size())<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L52\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"52\"><\/td>\n<td id=\"file-crystals-cpp-LC52\" class=\"blob-code blob-code-inner js-file-line\">#define PB push_back<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L53\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"53\"><\/td>\n<td id=\"file-crystals-cpp-LC53\" class=\"blob-code blob-code-inner js-file-line\">#define MP(A, B) make_pair(A, B)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L54\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"54\"><\/td>\n<td id=\"file-crystals-cpp-LC54\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L55\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"55\"><\/td>\n<td id=\"file-crystals-cpp-LC55\" class=\"blob-code blob-code-inner js-file-line\">#define Rush int T____; RD(T____); DO(T____)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L56\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"56\"><\/td>\n<td id=\"file-crystals-cpp-LC56\" class=\"blob-code blob-code-inner js-file-line\">#pragma comment(linker, &quot;\/STACK:36777216&quot;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L57\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"57\"><\/td>\n<td id=\"file-crystals-cpp-LC57\" class=\"blob-code blob-code-inner js-file-line\">#define Ruby system(&quot;ruby main.rb&quot;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L58\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"58\"><\/td>\n<td id=\"file-crystals-cpp-LC58\" class=\"blob-code blob-code-inner js-file-line\">#define Haskell system(&quot;runghc main.hs&quot;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L59\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"59\"><\/td>\n<td id=\"file-crystals-cpp-LC59\" class=\"blob-code blob-code-inner js-file-line\">#define Pascal system(&quot;fpc main.pas&quot;)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L60\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"60\"><\/td>\n<td id=\"file-crystals-cpp-LC60\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L61\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"61\"><\/td>\n<td id=\"file-crystals-cpp-LC61\" class=\"blob-code blob-code-inner js-file-line\">\/** Typedef **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L62\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"62\"><\/td>\n<td id=\"file-crystals-cpp-LC62\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L63\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"63\"><\/td>\n<td id=\"file-crystals-cpp-LC63\" class=\"blob-code blob-code-inner js-file-line\">typedef long long LL;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L64\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"64\"><\/td>\n<td id=\"file-crystals-cpp-LC64\" class=\"blob-code blob-code-inner js-file-line\">typedef double DB;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L65\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"65\"><\/td>\n<td id=\"file-crystals-cpp-LC65\" class=\"blob-code blob-code-inner js-file-line\">typedef unsigned UINT;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L66\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"66\"><\/td>\n<td id=\"file-crystals-cpp-LC66\" class=\"blob-code blob-code-inner js-file-line\">typedef unsigned long long ULL;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L67\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"67\"><\/td>\n<td id=\"file-crystals-cpp-LC67\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L68\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"68\"><\/td>\n<td id=\"file-crystals-cpp-LC68\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;int&gt; VI;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L69\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"69\"><\/td>\n<td id=\"file-crystals-cpp-LC69\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;string&gt; VS;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L70\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"70\"><\/td>\n<td id=\"file-crystals-cpp-LC70\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;LL&gt; VL;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L71\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"71\"><\/td>\n<td id=\"file-crystals-cpp-LC71\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;DB&gt; VD;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L72\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"72\"><\/td>\n<td id=\"file-crystals-cpp-LC72\" class=\"blob-code blob-code-inner js-file-line\">typedef set&lt;int&gt; SI;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L73\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"73\"><\/td>\n<td id=\"file-crystals-cpp-LC73\" class=\"blob-code blob-code-inner js-file-line\">typedef set&lt;string&gt; SS;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L74\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"74\"><\/td>\n<td id=\"file-crystals-cpp-LC74\" class=\"blob-code blob-code-inner js-file-line\">typedef set&lt;LL&gt; SL;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L75\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"75\"><\/td>\n<td id=\"file-crystals-cpp-LC75\" class=\"blob-code blob-code-inner js-file-line\">typedef set&lt;DB&gt; SD;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L76\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"76\"><\/td>\n<td id=\"file-crystals-cpp-LC76\" class=\"blob-code blob-code-inner js-file-line\">typedef map&lt;int, int&gt; MI;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L77\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"77\"><\/td>\n<td id=\"file-crystals-cpp-LC77\" class=\"blob-code blob-code-inner js-file-line\">typedef map&lt;string, int&gt; MS;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L78\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"78\"><\/td>\n<td id=\"file-crystals-cpp-LC78\" class=\"blob-code blob-code-inner js-file-line\">typedef map&lt;LL, int&gt; ML;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L79\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"79\"><\/td>\n<td id=\"file-crystals-cpp-LC79\" class=\"blob-code blob-code-inner js-file-line\">typedef map&lt;DB, int&gt; MD;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L80\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"80\"><\/td>\n<td id=\"file-crystals-cpp-LC80\" class=\"blob-code blob-code-inner js-file-line\">typedef pair&lt;int, int&gt; PII;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L81\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"81\"><\/td>\n<td id=\"file-crystals-cpp-LC81\" class=\"blob-code blob-code-inner js-file-line\">typedef pair&lt;int, bool&gt; PIB;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L82\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"82\"><\/td>\n<td id=\"file-crystals-cpp-LC82\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;PII&gt; VII;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L83\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"83\"><\/td>\n<td id=\"file-crystals-cpp-LC83\" class=\"blob-code blob-code-inner js-file-line\">typedef set&lt;PII&gt; SII;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L84\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"84\"><\/td>\n<td id=\"file-crystals-cpp-LC84\" class=\"blob-code blob-code-inner js-file-line\">typedef map&lt;PII, int&gt; MII;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L85\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"85\"><\/td>\n<td id=\"file-crystals-cpp-LC85\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;VI&gt; VVI;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L86\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"86\"><\/td>\n<td id=\"file-crystals-cpp-LC86\" class=\"blob-code blob-code-inner js-file-line\">typedef vector&lt;VII&gt; VVII;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L87\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"87\"><\/td>\n<td id=\"file-crystals-cpp-LC87\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L88\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"88\"><\/td>\n<td id=\"file-crystals-cpp-LC88\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L89\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"89\"><\/td>\n<td id=\"file-crystals-cpp-LC89\" class=\"blob-code blob-code-inner js-file-line\">\/** I\/O Accelerator **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L90\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"90\"><\/td>\n<td id=\"file-crystals-cpp-LC90\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L91\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"91\"><\/td>\n<td id=\"file-crystals-cpp-LC91\" class=\"blob-code blob-code-inner js-file-line\">\/* &#8230; :&quot; We are I\/O Accelerator &#8230; Use us at your own risk \ud83d\ude09 &#8230; &quot; .. *\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L92\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"92\"><\/td>\n<td id=\"file-crystals-cpp-LC92\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L93\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"93\"><\/td>\n<td id=\"file-crystals-cpp-LC93\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void RD(T &amp;x){<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L94\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"94\"><\/td>\n<td id=\"file-crystals-cpp-LC94\" class=\"blob-code blob-code-inner js-file-line\">    cin &gt;&gt; x;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L95\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"95\"><\/td>\n<td id=\"file-crystals-cpp-LC95\" class=\"blob-code blob-code-inner js-file-line\">    \/\/scanf(&quot;%d&quot;, &amp;x);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L96\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"96\"><\/td>\n<td id=\"file-crystals-cpp-LC96\" class=\"blob-code blob-code-inner js-file-line\">    \/\/char c; for (c = getchar(); c &lt; &#39;0&#39;; c = getchar()); x = c &#8211; &#39;0&#39;; for (c = getchar(); c &gt;= &#39;0&#39;; c = getchar()) x = x * 10 + c &#8211; &#39;0&#39;;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L97\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"97\"><\/td>\n<td id=\"file-crystals-cpp-LC97\" class=\"blob-code blob-code-inner js-file-line\">    \/\/char c; c = getchar(); x = c &#8211; &#39;0&#39;; for (c = getchar(); c &gt;= &#39;0&#39;; c = getchar()) x = x * 10 + c &#8211; &#39;0&#39;;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L98\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"98\"><\/td>\n<td id=\"file-crystals-cpp-LC98\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L99\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"99\"><\/td>\n<td id=\"file-crystals-cpp-LC99\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L100\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"100\"><\/td>\n<td id=\"file-crystals-cpp-LC100\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L101\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"101\"><\/td>\n<td id=\"file-crystals-cpp-LC101\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void OT(const T &amp;x){<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L102\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"102\"><\/td>\n<td id=\"file-crystals-cpp-LC102\" class=\"blob-code blob-code-inner js-file-line\">    cout &lt;&lt; x &lt;&lt; endl;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L103\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"103\"><\/td>\n<td id=\"file-crystals-cpp-LC103\" class=\"blob-code blob-code-inner js-file-line\">    \/\/printf(&quot;%d\\n&quot;, x);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L104\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"104\"><\/td>\n<td id=\"file-crystals-cpp-LC104\" class=\"blob-code blob-code-inner js-file-line\">    \/\/printf(&quot;%.2lf&quot;, x);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L105\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"105\"><\/td>\n<td id=\"file-crystals-cpp-LC105\" class=\"blob-code blob-code-inner js-file-line\">    \/\/printf(&quot;Case %d: %d&quot;, ____T, ans)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L106\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"106\"><\/td>\n<td id=\"file-crystals-cpp-LC106\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L107\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"107\"><\/td>\n<td id=\"file-crystals-cpp-LC107\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L108\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"108\"><\/td>\n<td id=\"file-crystals-cpp-LC108\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline T&amp; _RD(T &amp;x){ RD(x); return x;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L109\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"109\"><\/td>\n<td id=\"file-crystals-cpp-LC109\" class=\"blob-code blob-code-inner js-file-line\">inline int RD(){ int x; RD(x); return x;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L110\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"110\"><\/td>\n<td id=\"file-crystals-cpp-LC110\" class=\"blob-code blob-code-inner js-file-line\">inline LL RD_LL(){ int x; RD(x); return x;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L111\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"111\"><\/td>\n<td id=\"file-crystals-cpp-LC111\" class=\"blob-code blob-code-inner js-file-line\">inline DB RD_DB(){ DB x; RD(x); return x;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L112\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"112\"><\/td>\n<td id=\"file-crystals-cpp-LC112\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L113\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"113\"><\/td>\n<td id=\"file-crystals-cpp-LC113\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1&gt; inline void RD(T0 &amp;x0, T1 &amp;x1){RD(x0), RD(x1);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L114\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"114\"><\/td>\n<td id=\"file-crystals-cpp-LC114\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2&gt; inline void RD(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2){RD(x0), RD(x1), RD(x2);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L115\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"115\"><\/td>\n<td id=\"file-crystals-cpp-LC115\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3&gt; inline void RD(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3){RD(x0), RD(x1), RD(x2), RD(x3);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L116\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"116\"><\/td>\n<td id=\"file-crystals-cpp-LC116\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4&gt; inline void RD(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4){RD(x0), RD(x1), RD(x2), RD(x3), RD(x4);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L117\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"117\"><\/td>\n<td id=\"file-crystals-cpp-LC117\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; inline void RD(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4, T5 &amp;x5){RD(x0), RD(x1), RD(x2), RD(x3), RD(x4), RD(x5);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L118\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"118\"><\/td>\n<td id=\"file-crystals-cpp-LC118\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5, class T6&gt; inline void RD(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4, T5 &amp;x5, T6 &amp;x6){RD(x0), RD(x1), RD(x2), RD(x3), RD(x4), RD(x5), RD(x6);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L119\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"119\"><\/td>\n<td id=\"file-crystals-cpp-LC119\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L120\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"120\"><\/td>\n<td id=\"file-crystals-cpp-LC120\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1&gt; inline void OT(T0 &amp;x0, T1 &amp;x1){OT(x0), OT(x1);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L121\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"121\"><\/td>\n<td id=\"file-crystals-cpp-LC121\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2&gt; inline void OT(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2){OT(x0), OT(x1), OT(x2);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L122\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"122\"><\/td>\n<td id=\"file-crystals-cpp-LC122\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3&gt; inline void OT(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3){OT(x0), OT(x1), OT(x2), OT(x3);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L123\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"123\"><\/td>\n<td id=\"file-crystals-cpp-LC123\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4&gt; inline void OT(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4){OT(x0), OT(x1), OT(x2), OT(x3), OT(x4);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L124\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"124\"><\/td>\n<td id=\"file-crystals-cpp-LC124\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; inline void OT(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4, T5 &amp;x5){OT(x0), OT(x1), OT(x2), OT(x3), OT(x4), OT(x5);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L125\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"125\"><\/td>\n<td id=\"file-crystals-cpp-LC125\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5, class T6&gt; inline void OT(T0 &amp;x0, T1 &amp;x1, T2 &amp;x2, T3 &amp;x3, T4 &amp;x4, T5 &amp;x5, T6 &amp;x6){OT(x0), OT(x1), OT(x2), OT(x3), OT(x4), OT(x5), OT(x6);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L126\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"126\"><\/td>\n<td id=\"file-crystals-cpp-LC126\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L127\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"127\"><\/td>\n<td id=\"file-crystals-cpp-LC127\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void RST(T &amp;A){memset(A, 0, sizeof(A));}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L128\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"128\"><\/td>\n<td id=\"file-crystals-cpp-LC128\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1&gt; inline void RST(T0 &amp;A0, T1 &amp;A1){RST(A0), RST(A1);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L129\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"129\"><\/td>\n<td id=\"file-crystals-cpp-LC129\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2&gt; inline void RST(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2){RST(A0), RST(A1), RST(A2);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L130\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"130\"><\/td>\n<td id=\"file-crystals-cpp-LC130\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3&gt; inline void RST(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3){RST(A0), RST(A1), RST(A2), RST(A3);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L131\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"131\"><\/td>\n<td id=\"file-crystals-cpp-LC131\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4&gt; inline void RST(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4){RST(A0), RST(A1), RST(A2), RST(A3), RST(A4);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L132\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"132\"><\/td>\n<td id=\"file-crystals-cpp-LC132\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; inline void RST(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5){RST(A0), RST(A1), RST(A2), RST(A3), RST(A4), RST(A5);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L133\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"133\"><\/td>\n<td id=\"file-crystals-cpp-LC133\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5, class T6&gt; inline void RST(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5, T6 &amp;A6){RST(A0), RST(A1), RST(A2), RST(A3), RST(A4), RST(A5), RST(A6);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L134\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"134\"><\/td>\n<td id=\"file-crystals-cpp-LC134\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L135\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"135\"><\/td>\n<td id=\"file-crystals-cpp-LC135\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void CLR(T &amp;A){A.clear();}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L136\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"136\"><\/td>\n<td id=\"file-crystals-cpp-LC136\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1){CLR(A0), CLR(A1);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L137\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"137\"><\/td>\n<td id=\"file-crystals-cpp-LC137\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2){CLR(A0), CLR(A1), CLR(A2);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L138\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"138\"><\/td>\n<td id=\"file-crystals-cpp-LC138\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3){CLR(A0), CLR(A1), CLR(A2), CLR(A3);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L139\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"139\"><\/td>\n<td id=\"file-crystals-cpp-LC139\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4){CLR(A0), CLR(A1), CLR(A2), CLR(A3), CLR(A4);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L140\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"140\"><\/td>\n<td id=\"file-crystals-cpp-LC140\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5){CLR(A0), CLR(A1), CLR(A2), CLR(A3), CLR(A4), CLR(A5);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L141\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"141\"><\/td>\n<td id=\"file-crystals-cpp-LC141\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5, class T6&gt; inline void CLR(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5, T6 &amp;A6){CLR(A0), CLR(A1), CLR(A2), CLR(A3), CLR(A4), CLR(A5), CLR(A6);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L142\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"142\"><\/td>\n<td id=\"file-crystals-cpp-LC142\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void CLR(T &amp;A, int n){REP(i, n) CLR(A[i]);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L143\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"143\"><\/td>\n<td id=\"file-crystals-cpp-LC143\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L144\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"144\"><\/td>\n<td id=\"file-crystals-cpp-LC144\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void FLC(T &amp;A, int x){memset(A, x, sizeof(A));}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L145\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"145\"><\/td>\n<td id=\"file-crystals-cpp-LC145\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, int x){FLC(A0, x), FLC(A1, x);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L146\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"146\"><\/td>\n<td id=\"file-crystals-cpp-LC146\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2){FLC(A0), FLC(A1), FLC(A2);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L147\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"147\"><\/td>\n<td id=\"file-crystals-cpp-LC147\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3){FLC(A0), FLC(A1), FLC(A2), FLC(A3);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L148\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"148\"><\/td>\n<td id=\"file-crystals-cpp-LC148\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4){FLC(A0), FLC(A1), FLC(A2), FLC(A3), FLC(A4);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L149\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"149\"><\/td>\n<td id=\"file-crystals-cpp-LC149\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5){FLC(A0), FLC(A1), FLC(A2), FLC(A3), FLC(A4), FLC(A5);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L150\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"150\"><\/td>\n<td id=\"file-crystals-cpp-LC150\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T0, class T1, class T2, class T3, class T4, class T5, class T6&gt; inline void FLC(T0 &amp;A0, T1 &amp;A1, T2 &amp;A2, T3 &amp;A3, T4 &amp;A4, T5 &amp;A5, T6 &amp;A6){FLC(A0), FLC(A1), FLC(A2), FLC(A3), FLC(A4), FLC(A5), FLC(A6);}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L151\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"151\"><\/td>\n<td id=\"file-crystals-cpp-LC151\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L152\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"152\"><\/td>\n<td id=\"file-crystals-cpp-LC152\" class=\"blob-code blob-code-inner js-file-line\">\/** Add &#8211; On **\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L153\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"153\"><\/td>\n<td id=\"file-crystals-cpp-LC153\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L154\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"154\"><\/td>\n<td id=\"file-crystals-cpp-LC154\" class=\"blob-code blob-code-inner js-file-line\">const int MOD = 1000000003;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L155\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"155\"><\/td>\n<td id=\"file-crystals-cpp-LC155\" class=\"blob-code blob-code-inner js-file-line\">const int INF = 0x7fffffff;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L156\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"156\"><\/td>\n<td id=\"file-crystals-cpp-LC156\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L157\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"157\"><\/td>\n<td id=\"file-crystals-cpp-LC157\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void checkMin(T &amp;a, T b){if (b&lt;a) a=b;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L158\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"158\"><\/td>\n<td id=\"file-crystals-cpp-LC158\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline void checkMax(T &amp;a, T b){if (b&gt;a) a=b;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L159\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"159\"><\/td>\n<td id=\"file-crystals-cpp-LC159\" class=\"blob-code blob-code-inner js-file-line\">template&lt;class T&gt; inline T sqr(T x){return x * x;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L160\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"160\"><\/td>\n<td id=\"file-crystals-cpp-LC160\" class=\"blob-code blob-code-inner js-file-line\">inline bool _1(int x, int i){return x &amp; 1&lt;&lt;i;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L161\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"161\"><\/td>\n<td id=\"file-crystals-cpp-LC161\" class=\"blob-code blob-code-inner js-file-line\">inline int _1(int i){return 1&lt;&lt;i;}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L162\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"162\"><\/td>\n<td id=\"file-crystals-cpp-LC162\" class=\"blob-code blob-code-inner js-file-line\">inline int _U(int i){return _1(i) &#8211; 1;};<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L163\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"163\"><\/td>\n<td id=\"file-crystals-cpp-LC163\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L164\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"164\"><\/td>\n<td id=\"file-crystals-cpp-LC164\" class=\"blob-code blob-code-inner js-file-line\">\/* &#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;. *\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L165\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"165\"><\/td>\n<td id=\"file-crystals-cpp-LC165\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L166\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"166\"><\/td>\n<td id=\"file-crystals-cpp-LC166\" class=\"blob-code blob-code-inner js-file-line\">const int N = 50;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L167\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"167\"><\/td>\n<td id=\"file-crystals-cpp-LC167\" class=\"blob-code blob-code-inner js-file-line\">UINT a[N]; ULL ans;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L168\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"168\"><\/td>\n<td id=\"file-crystals-cpp-LC168\" class=\"blob-code blob-code-inner js-file-line\">int n, k;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L169\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"169\"><\/td>\n<td id=\"file-crystals-cpp-LC169\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L170\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"170\"><\/td>\n<td id=\"file-crystals-cpp-LC170\" class=\"blob-code blob-code-inner js-file-line\">#define c ((a[j] &amp; _U(i)) + 1)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L171\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"171\"><\/td>\n<td id=\"file-crystals-cpp-LC171\" class=\"blob-code blob-code-inner js-file-line\">#define g (1 &lt;&lt; i)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L172\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"172\"><\/td>\n<td id=\"file-crystals-cpp-LC172\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L173\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"173\"><\/td>\n<td id=\"file-crystals-cpp-LC173\" class=\"blob-code blob-code-inner js-file-line\">void solve() {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L174\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"174\"><\/td>\n<td id=\"file-crystals-cpp-LC174\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L175\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"175\"><\/td>\n<td id=\"file-crystals-cpp-LC175\" class=\"blob-code blob-code-inner js-file-line\">    ULL f[3]; int t; DWN(i, 32 ,0) {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L176\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"176\"><\/td>\n<td id=\"file-crystals-cpp-LC176\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L177\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"177\"><\/td>\n<td id=\"file-crystals-cpp-LC177\" class=\"blob-code blob-code-inner js-file-line\">        t = 0, f[0] = 1, f[1] = 0, f[2] = 0; \/\/#<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L178\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"178\"><\/td>\n<td id=\"file-crystals-cpp-LC178\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L179\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"179\"><\/td>\n<td id=\"file-crystals-cpp-LC179\" class=\"blob-code blob-code-inner js-file-line\">        REP(j, n){<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L180\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"180\"><\/td>\n<td id=\"file-crystals-cpp-LC180\" class=\"blob-code blob-code-inner js-file-line\">            if (_1(a[j], i)) {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L181\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"181\"><\/td>\n<td id=\"file-crystals-cpp-LC181\" class=\"blob-code blob-code-inner js-file-line\">                ULL w1 = f[0] + f[2] * g, w2 = f[1] * g; t ^= 1;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L182\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"182\"><\/td>\n<td id=\"file-crystals-cpp-LC182\" class=\"blob-code blob-code-inner js-file-line\">                f[0] *= c, f[1] *= c, f[2] *= c;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L183\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"183\"><\/td>\n<td id=\"file-crystals-cpp-LC183\" class=\"blob-code blob-code-inner js-file-line\">                f[1] += w1, f[2] += w2;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L184\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"184\"><\/td>\n<td id=\"file-crystals-cpp-LC184\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L185\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"185\"><\/td>\n<td id=\"file-crystals-cpp-LC185\" class=\"blob-code blob-code-inner js-file-line\">            else {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L186\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"186\"><\/td>\n<td id=\"file-crystals-cpp-LC186\" class=\"blob-code blob-code-inner js-file-line\">                f[0] *= c, f[1] *= c, f[2] *= c;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L187\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"187\"><\/td>\n<td id=\"file-crystals-cpp-LC187\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L188\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"188\"><\/td>\n<td id=\"file-crystals-cpp-LC188\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L189\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"189\"><\/td>\n<td id=\"file-crystals-cpp-LC189\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L190\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"190\"><\/td>\n<td id=\"file-crystals-cpp-LC190\" class=\"blob-code blob-code-inner js-file-line\">        if (t) {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L191\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"191\"><\/td>\n<td id=\"file-crystals-cpp-LC191\" class=\"blob-code blob-code-inner js-file-line\">            ans += f[1] &#8211; 1;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L192\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"192\"><\/td>\n<td id=\"file-crystals-cpp-LC192\" class=\"blob-code blob-code-inner js-file-line\">            return;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L193\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"193\"><\/td>\n<td id=\"file-crystals-cpp-LC193\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L194\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"194\"><\/td>\n<td id=\"file-crystals-cpp-LC194\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L195\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"195\"><\/td>\n<td id=\"file-crystals-cpp-LC195\" class=\"blob-code blob-code-inner js-file-line\">        ans += f[2];<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L196\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"196\"><\/td>\n<td id=\"file-crystals-cpp-LC196\" class=\"blob-code blob-code-inner js-file-line\">    }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L197\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"197\"><\/td>\n<td id=\"file-crystals-cpp-LC197\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L198\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"198\"><\/td>\n<td id=\"file-crystals-cpp-LC198\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L199\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"199\"><\/td>\n<td id=\"file-crystals-cpp-LC199\" class=\"blob-code blob-code-inner js-file-line\">int main() {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L200\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"200\"><\/td>\n<td id=\"file-crystals-cpp-LC200\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L201\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"201\"><\/td>\n<td id=\"file-crystals-cpp-LC201\" class=\"blob-code blob-code-inner js-file-line\">    \/\/freopen(&quot;D.in&quot;, &quot;r&quot;, stdin);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L202\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"202\"><\/td>\n<td id=\"file-crystals-cpp-LC202\" class=\"blob-code blob-code-inner js-file-line\">    \/\/freopen(&quot;D.out&quot;, &quot;w&quot;, stdout);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L203\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"203\"><\/td>\n<td id=\"file-crystals-cpp-LC203\" class=\"blob-code blob-code-inner js-file-line\">    \/\/ios::sync_with_stdio(false);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L204\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"204\"><\/td>\n<td id=\"file-crystals-cpp-LC204\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L205\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"205\"><\/td>\n<td id=\"file-crystals-cpp-LC205\" class=\"blob-code blob-code-inner js-file-line\">    RD(n); REP(i, n) RD(a[i]);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L206\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"206\"><\/td>\n<td id=\"file-crystals-cpp-LC206\" class=\"blob-code blob-code-inner js-file-line\">    solve(), OT(ans);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L207\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"207\"><\/td>\n<td id=\"file-crystals-cpp-LC207\" class=\"blob-code blob-code-inner js-file-line\"> <\/td>\n<\/tr>\n<tr>\n<td id=\"file-crystals-cpp-L208\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"208\"><\/td>\n<td id=\"file-crystals-cpp-LC208\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<\/table>\n<\/div><\/div>\n<\/p><\/div>\n<\/div><\/div>\n<div class=\"gist-meta\">\n        <a href=\"https:\/\/gist.github.com\/lychees\/6475453\/raw\/47979af5dead9502eeadce34740881478cd477ed\/Crystals.cpp\" style=\"float:right\" class=\"Link--inTextBlock\">view raw<\/a><br \/>\n        <a href=\"https:\/\/gist.github.com\/lychees\/6475453#file-crystals-cpp\" class=\"Link--inTextBlock\"><br \/>\n          Crystals.cpp<br \/>\n        <\/a><br \/>\n        hosted with &#10084; by <a class=\"Link--inTextBlock\" href=\"https:\/\/github.com\">GitHub<\/a>\n      <\/div>\n<\/p><\/div>\n<\/div>\n<p><a href=\"http:\/\/www.lydsy.com\/JudgeOnline\/problem.php?id=1442\">http:\/\/www.lydsy.com\/JudgeOnline\/problem.php?id=1442<\/a><br \/>\nhttp:\/\/livearchive.onlinejudge.org\/index.php?option=com_onlinejudge&#038;Itemid=8&#038;page=show_problem&#038;category=384&#038;problem=3102&#038;mosmsg=Submission+received+with+ID+856655<br \/>\nhttp:\/\/main.edu.pl\/en\/archive\/oi\/13\/kry<br \/>\nSRM 508 DIV 1 Level 2. YetAnotherORProblem<br \/>\nhttp:\/\/hi.baidu.com\/%D2%BB%CE%BB%C1%E3\/blog\/item\/603ee5b68bf283e630add144.html<br \/>\nhttp:\/\/blog.163.com\/fjxmlhx@126\/blog\/static\/144072841201022492458853\/<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Brief description: \u7ed9\u5b9a\u4e00\u4e2a n \u4e2a\u5143\u7d20\u7684\u6570\u7ec4 {ai}, \u95ee\u5b58\u5728\u591a\u5c11\u7ec4 {xi, xi<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[22],"tags":[],"class_list":["post-819","post","type-post","status-publish","format-standard","hentry","category-bzoj"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/p2tdP7-dd","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/posts\/819","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/comments?post=819"}],"version-history":[{"count":0,"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/posts\/819\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/media?parent=819"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/categories?post=819"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.shuizilong.com\/house\/wp-json\/wp\/v2\/tags?post=819"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}