{"id":680,"date":"2020-03-20T20:28:48","date_gmt":"2020-03-20T12:28:48","guid":{"rendered":"http:\/\/kylelv.com\/?p=680"},"modified":"2020-03-20T20:28:48","modified_gmt":"2020-03-20T12:28:48","slug":"%e5%87%bd%e6%95%b0%e5%af%b9%e8%b1%a1%e7%9a%84%e8%bf%87%e6%bb%a4%e5%99%a8","status":"publish","type":"post","link":"https:\/\/blog.kylelv.com\/?p=680","title":{"rendered":"\u51fd\u6570\u5bf9\u8c61\u7684\u8fc7\u6ee4\u5668"},"content":{"rendered":"\n<h2 class=\"has-text-align-center wp-block-heading\">D:\u51fd\u6570\u5bf9\u8c61\u7684\u8fc7\u6ee4\u5668<\/h2>\n\n\n\n<p class=\"has-text-align-center\">\u603b\u65f6\u95f4\u9650\u5236:\u00a01000ms\u00a0\u5185\u5b58\u9650\u5236:\u00a065536kB<\/p>\n\n\n\n<p class=\"has-text-align-left\">\u63cf\u8ff0<\/p>\n\n\n\n<p>\u7a0b\u5e8f\u586b\u7a7a\u8f93\u51fa\u6307\u5b9a\u7ed3\u679c<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">#include &lt;iostream&gt;\n#include &lt;vector&gt;\nusing namespace std;\n\n\nstruct A {\n\tint v;\n\tA() { }\n\tA(int n):v(n) { };\n\tbool operator&lt;(const A &amp; a) const {\n\t\treturn v &lt; a.v;\n\t}\n};<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/ \u5728\u6b64\u5904\u8865\u5145\u4f60\u7684\u4ee3\u7801<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">template &lt;class T&gt;\nvoid Print(T s,T e)\n{\n\tfor(;s!=e; ++s)\n\t\tcout &lt;&lt; *s &lt;&lt; \",\";\n\tcout &lt;&lt; endl;\n}\ntemplate &lt;class T1, class T2,class T3&gt;\nT2 Filter( T1 s,T1 e, T2 s2, T3 op) \n{\n\tfor(;s != e; ++s) {\n\t\tif( op(*s)) {\n\t\t\t* s2 = * s;\n\t\t\t++s2;\n\t\t}\n\t}\n\treturn s2;\n}\n\nostream &amp; operator &lt;&lt;(ostream &amp; o,A &amp; a)\n{\n\to &lt;&lt; a.v;\n\treturn o;\n}\nvector&lt;int&gt; ia;\nvector&lt;A&gt; aa; \nint main()\n{\n\tint m,n;\n\twhile(cin &gt;&gt; m &gt;&gt; n) {\n\t\tia.clear();\n\t\taa.clear(); \n\t\tint k,tmp;\n\t\tcin &gt;&gt; k;\n\t\tfor(int i = 0;i &lt; k; ++i) {\n\t\t\tcin &gt;&gt; tmp; \n\t\t\tia.push_back(tmp);\n\t\t\taa.push_back(tmp); \n\t\t}\n\t\tvector&lt;int&gt; ib(k);\n\t\tvector&lt;A&gt; ab(k);\n\t\tvector&lt;int&gt;::iterator p =  Filter(ia.begin(),ia.end(),ib.begin(),FilterClass&lt;int&gt;(m,n));\n\t\tPrint(ib.begin(),p);\n\t\tvector&lt;A&gt;::iterator pp = Filter(aa.begin(),aa.end(),ab.begin(),FilterClass&lt;A&gt;(m,n));\n\t\tPrint(ab.begin(),pp);\n\t\t\n\t}\n\treturn 0;\n}<\/pre>\n\n\n\n<p>\u8f93\u5165<\/p>\n\n\n\n<p>\u591a\u7ec4\u6570\u636e<br>\u6bcf\u7ec4\u6570\u636e\u4e24\u884c<\/p>\n\n\n\n<p>\u7b2c\u4e00\u884c\u662f\u4e24\u4e2a\u6574\u6570 m \u548c n<br>\u7b2c\u4e8c\u884c\u5148\u662f\u4e00\u4e2a\u6574\u6570k ,\u7136\u540e\u540e\u9762\u8ddf\u7740k\u4e2a\u6574\u6570<\/p>\n\n\n\n<p>\u8f93\u51fa<\/p>\n\n\n\n<p>\u5bf9\u6bcf\u7ec4\u6570\u636e\uff0c\u6309\u539f\u987a\u5e8f\u8f93\u51fa\u7b2c\u4e8c\u884c\u7684\u540ek\u4e2a\u6574\u6570\u4e2d\uff0c\u5927\u4e8em\u4e14\u5c0f\u4e8en\u7684\u6570<br>\u8f93\u51fa\u4e24\u904d<br>\u6570\u636e\u4fdd\u8bc1\u4e00\u5b9a\u80fd\u627e\u5230\u7b26\u5408\u8981\u6c42\u7684\u6574\u6570<\/p>\n\n\n\n<p>\u6837\u4f8b\u8f93\u5165<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1 3\n1 2\n2 8\n5 1 2 3 4 9<\/pre>\n\n\n\n<p>\u6837\u4f8b\u8f93\u51fa<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">2,\n2,\n3,4,\n3,4,<\/pre>\n\n\n\n<p>\u6765\u6e90Guo Wei<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;iostream>\n#include &lt;vector>\nusing namespace std;\n\n\nstruct A {\n\tint v;\n\tA() { }\n\tA(int n):v(n) { };\n\tbool operator&lt;(const A &amp; a) const {\n\t\treturn v &lt; a.v;\n\t}\n};\ntemplate &lt;class T>\nclass FilterClass{\n    T m,n;\npublic:\n    FilterClass(int a,int b):m(a),n(b){}\n    bool operator ()(T x){\n        return m&lt;x&amp;&amp;x&lt;n;\n    }\n};\n\/\/ \u5728\u6b64\u5904\u8865\u5145\u4f60\u7684\u4ee3\u7801\ntemplate &lt;class T>\nvoid Print(T s,T e)\n{\n\tfor(;s!=e; ++s)\n\t\tcout &lt;&lt; *s &lt;&lt; \",\";\n\tcout &lt;&lt; endl;\n}\ntemplate &lt;class T1, class T2,class T3>\nT2 Filter( T1 s,T1 e, T2 s2, T3 op) \n{\n\tfor(;s != e; ++s) {\n\t\tif( op(*s)) {\n\t\t\t* s2 = * s;\n\t\t\t++s2;\n\t\t}\n\t}\n\treturn s2;\n}\n\nostream &amp; operator &lt;&lt;(ostream &amp; o,A &amp; a)\n{\n\to &lt;&lt; a.v;\n\treturn o;\n}\nvector&lt;int> ia;\nvector&lt;A> aa; \nint main()\n{\n\tint m,n;\n\twhile(cin >> m >> n) {\n\t\tia.clear();\n\t\taa.clear(); \n\t\tint k,tmp;\n\t\tcin >> k;\n\t\tfor(int i = 0;i &lt; k; ++i) {\n\t\t\tcin >> tmp; \n\t\t\tia.push_back(tmp);\n\t\t\taa.push_back(tmp); \n\t\t}\n\t\tvector&lt;int> ib(k);\n\t\tvector&lt;A> ab(k);\n\t\tvector&lt;int>::iterator p =  Filter(ia.begin(),ia.end(),ib.begin(),FilterClass&lt;int>(m,n));\n\t\tPrint(ib.begin(),p);\n\t\tvector&lt;A>::iterator pp = Filter(aa.begin(),aa.end(),ab.begin(),FilterClass&lt;A>(m,n));\n\t\tPrint(ab.begin(),pp);\n\t\t\n\t}\n\treturn 0;\n}\n<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>D:\u51fd\u6570\u5bf9\u8c61\u7684\u8fc7\u6ee4\u5668 \u603b\u65f6\u95f4\u9650\u5236:\u00a01000ms\u00a0\u5185\u5b58\u9650\u5236:\u00a065536kB \u63cf\u8ff0 \u7a0b\u5e8f\u586b\u7a7a\u8f93\u51fa\u6307\u5b9a\u7ed3\u679c #i [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[70],"tags":[],"class_list":["post-680","post","type-post","status-publish","format-standard","hentry","category-70"],"_links":{"self":[{"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/posts\/680","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=680"}],"version-history":[{"count":1,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/posts\/680\/revisions"}],"predecessor-version":[{"id":681,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=\/wp\/v2\/posts\/680\/revisions\/681"}],"wp:attachment":[{"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=680"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=680"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.kylelv.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=680"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}