锘??xml version="1.0" encoding="utf-8" standalone="yes"?>麻豆亚洲AV永久无码精品久久,四虎久久影院,99久久婷婷国产综合亚洲http://www.shnenglu.com/cdy20/category/6113.html鍕囨暍.鍧氭瘏.鏅烘収zh-cnWed, 02 Nov 2011 16:17:47 GMTWed, 02 Nov 2011 16:17:47 GMT60zlib綆楁硶錛堟殏瀛橈紝鍘嬬緝瑙e帇錛?/title><link>http://www.shnenglu.com/cdy20/archive/2011/01/21/139043.html</link><dc:creator>钄′笢璧?/dc:creator><author>钄′笢璧?/author><pubDate>Fri, 21 Jan 2011 09:11:00 GMT</pubDate><guid>http://www.shnenglu.com/cdy20/archive/2011/01/21/139043.html</guid><wfw:comment>http://www.shnenglu.com/cdy20/comments/139043.html</wfw:comment><comments>http://www.shnenglu.com/cdy20/archive/2011/01/21/139043.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/cdy20/comments/commentRss/139043.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/cdy20/services/trackbacks/139043.html</trackback:ping><description><![CDATA[<p>1. Compression algorithm (deflate)</p> <p>The deflation algorithm used by gzip (also zip and zlib) is a variation of<br>LZ77 (Lempel-Ziv 1977, see reference below). It finds duplicated strings in<br>the input data.  The second occurrence of a string is replaced by a<br>pointer to the previous string, in the form of a pair (distance,<br>length).  Distances are limited to 32K bytes, and lengths are limited<br>to 258 bytes. When a string does not occur anywhere in the previous<br>32K bytes, it is emitted as a sequence of literal bytes.  (In this<br>description, `string' must be taken as an arbitrary sequence of bytes,<br>and is not restricted to printable characters.)</p> <p>Literals or match lengths are compressed with one Huffman tree, and<br>match distances are compressed with another tree. The trees are stored<br>in a compact form at the start of each block. The blocks can have any<br>size (except that the compressed data for one block must fit in<br>available memory). A block is terminated when deflate() determines that<br>it would be useful to start another block with fresh trees. (This is<br>somewhat similar to the behavior of LZW-based _compress_.)</p> <p>Duplicated strings are found using a hash table. All input strings of<br>length 3 are inserted in the hash table. A hash index is computed for<br>the next 3 bytes. If the hash chain for this index is not empty, all<br>strings in the chain are compared with the current input string, and<br>the longest match is selected.</p> <p>The hash chains are searched starting with the most recent strings, to<br>favor small distances and thus take advantage of the Huffman encoding.<br>The hash chains are singly linked. There are no deletions from the<br>hash chains, the algorithm simply discards matches that are too old.</p> <p>To avoid a worst-case situation, very long hash chains are arbitrarily<br>truncated at a certain length, determined by a runtime option (level<br>parameter of deflateInit). So deflate() does not always find the longest<br>possible match but generally finds a match which is long enough.</p> <p>deflate() also defers the selection of matches with a lazy evaluation<br>mechanism. After a match of length N has been found, deflate() searches for<br>a longer match at the next input byte. If a longer match is found, the<br>previous match is truncated to a length of one (thus producing a single<br>literal byte) and the process of lazy evaluation begins again. Otherwise,<br>the original match is kept, and the next match search is attempted only N<br>steps later.</p> <p>The lazy match evaluation is also subject to a runtime parameter. If<br>the current match is long enough, deflate() reduces the search for a longer<br>match, thus speeding up the whole process. If compression ratio is more<br>important than speed, deflate() attempts a complete second search even if<br>the first match is already long enough.</p> <p>The lazy match evaluation is not performed for the fastest compression<br>modes (level parameter 1 to 3). For these fast modes, new strings<br>are inserted in the hash table only when no match was found, or<br>when the match is not too long. This degrades the compression ratio<br>but saves time since there are both fewer insertions and fewer searches.</p> <p><br>2. Decompression algorithm (inflate)</p> <p>2.1 Introduction</p> <p>The key question is how to represent a Huffman code (or any prefix code) so<br>that you can decode fast.  The most important characteristic is that shorter<br>codes are much more common than longer codes, so pay attention to decoding the<br>short codes fast, and let the long codes take longer to decode.</p> <p>inflate() sets up a first level table that covers some number of bits of<br>input less than the length of longest code.  It gets that many bits from the<br>stream, and looks it up in the table.  The table will tell if the next<br>code is that many bits or less and how many, and if it is, it will tell<br>the value, else it will point to the next level table for which inflate()<br>grabs more bits and tries to decode a longer code.</p> <p>How many bits to make the first lookup is a tradeoff between the time it<br>takes to decode and the time it takes to build the table.  If building the<br>table took no time (and if you had infinite memory), then there would only<br>be a first level table to cover all the way to the longest code.  However,<br>building the table ends up taking a lot longer for more bits since short<br>codes are replicated many times in such a table.  What inflate() does is<br>simply to make the number of bits in the first table a variable, and  then<br>to set that variable for the maximum speed.</p> <p>For inflate, which has 286 possible codes for the literal/length tree, the size<br>of the first table is nine bits.  Also the distance trees have 30 possible<br>values, and the size of the first table is six bits.  Note that for each of<br>those cases, the table ended up one bit longer than the ``average'' code<br>length, i.e. the code length of an approximately flat code which would be a<br>little more than eight bits for 286 symbols and a little less than five bits<br>for 30 symbols.</p> <p><br>2.2 More details on the inflate table lookup</p> <p>Ok, you want to know what this cleverly obfuscated inflate tree actually<br>looks like.  You are correct that it's not a Huffman tree.  It is simply a<br>lookup table for the first, let's say, nine bits of a Huffman symbol.  The<br>symbol could be as short as one bit or as long as 15 bits.  If a particular<br>symbol is shorter than nine bits, then that symbol's translation is duplicated<br>in all those entries that start with that symbol's bits.  For example, if the<br>symbol is four bits, then it's duplicated 32 times in a nine-bit table.  If a<br>symbol is nine bits long, it appears in the table once.</p> <p>If the symbol is longer than nine bits, then that entry in the table points<br>to another similar table for the remaining bits.  Again, there are duplicated<br>entries as needed.  The idea is that most of the time the symbol will be short<br>and there will only be one table look up.  (That's whole idea behind data<br>compression in the first place.)  For the less frequent long symbols, there<br>will be two lookups.  If you had a compression method with really long<br>symbols, you could have as many levels of lookups as is efficient.  For<br>inflate, two is enough.</p> <p>So a table entry either points to another table (in which case nine bits in<br>the above example are gobbled), or it contains the translation for the symbol<br>and the number of bits to gobble.  Then you start again with the next<br>ungobbled bit.</p> <p>You may wonder: why not just have one lookup table for how ever many bits the<br>longest symbol is?  The reason is that if you do that, you end up spending<br>more time filling in duplicate symbol entries than you do actually decoding.<br>At least for deflate's output that generates new trees every several 10's of<br>kbytes.  You can imagine that filling in a 2^15 entry table for a 15-bit code<br>would take too long if you're only decoding several thousand symbols.  At the<br>other extreme, you could make a new table for every bit in the code.  In fact,<br>that's essentially a Huffman tree.  But then you spend two much time<br>traversing the tree while decoding, even for short symbols.</p> <p>So the number of bits for the first lookup table is a trade of the time to<br>fill out the table vs. the time spent looking at the second level and above of<br>the table.</p> <p>Here is an example, scaled down:</p> <p>The code being decoded, with 10 symbols, from 1 to 6 bits long:</p> <p>A: 0<br>B: 10<br>C: 1100<br>D: 11010<br>E: 11011<br>F: 11100<br>G: 11101<br>H: 11110<br>I: 111110<br>J: 111111</p> <p>Let's make the first table three bits long (eight entries):</p> <p>000: A,1<br>001: A,1<br>010: A,1<br>011: A,1<br>100: B,2<br>101: B,2<br>110: -> table X (gobble 3 bits)<br>111: -> table Y (gobble 3 bits)</p> <p>Each entry is what the bits decode as and how many bits that is, i.e. how<br>many bits to gobble.  Or the entry points to another table, with the number of<br>bits to gobble implicit in the size of the table.</p> <p>Table X is two bits long since the longest code starting with 110 is five bits<br>long:</p> <p>00: C,1<br>01: C,1<br>10: D,2<br>11: E,2</p> <p>Table Y is three bits long since the longest code starting with 111 is six<br>bits long:</p> <p>000: F,2<br>001: F,2<br>010: G,2<br>011: G,2<br>100: H,2<br>101: H,2<br>110: I,3<br>111: J,3</p> <p>So what we have here are three tables with a total of 20 entries that had to<br>be constructed.  That's compared to 64 entries for a single table.  Or<br>compared to 16 entries for a Huffman tree (six two entry tables and one four<br>entry table).  Assuming that the code ideally represents the probability of<br>the symbols, it takes on the average 1.25 lookups per symbol.  That's compared<br>to one lookup for the single table, or 1.66 lookups per symbol for the<br>Huffman tree.</p> <p>There, I think that gives you a picture of what's going on.  For inflate, the<br>meaning of a particular symbol is often more than just a letter.  It can be a<br>byte (a "literal"), or it can be either a length or a distance which<br>indicates a base value and a number of bits to fetch after the code that is<br>added to the base value.  Or it might be the special end-of-block code.  The<br>data structures created in inftrees.c try to encode all that information<br>compactly in the tables.</p> <p><br>Jean-loup Gailly        Mark Adler<br><a href="mailto:jloup@gzip.org">jloup@gzip.org</a>          <a href="mailto:madler@alumni.caltech.edu">madler@alumni.caltech.edu</a></p> <p><br>References:</p> <p>[LZ77] Ziv J., Lempel A., ``A Universal Algorithm for Sequential Data<br>Compression,'' IEEE Transactions on Information Theory, Vol. 23, No. 3,<br>pp. 337-343.</p> <p>``DEFLATE Compressed Data Format Specification'' available in<br><a >http://www.ietf.org/rfc/rfc1951.txt</a><br></p> <img src ="http://www.shnenglu.com/cdy20/aggbug/139043.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/cdy20/" target="_blank">钄′笢璧?/a> 2011-01-21 17:11 <a href="http://www.shnenglu.com/cdy20/archive/2011/01/21/139043.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>鏅掓帀璁烘枃銆夿P紲炵粡緗戠粶鐨勫紓甯哥偣媯嫻嬪簲鐢ㄥ彲琛屾х爺絀躲?/title><link>http://www.shnenglu.com/cdy20/archive/2010/06/17/118048.html</link><dc:creator>钄′笢璧?/dc:creator><author>钄′笢璧?/author><pubDate>Thu, 17 Jun 2010 00:50:00 GMT</pubDate><guid>http://www.shnenglu.com/cdy20/archive/2010/06/17/118048.html</guid><wfw:comment>http://www.shnenglu.com/cdy20/comments/118048.html</wfw:comment><comments>http://www.shnenglu.com/cdy20/archive/2010/06/17/118048.html#Feedback</comments><slash:comments>10</slash:comments><wfw:commentRss>http://www.shnenglu.com/cdy20/comments/commentRss/118048.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/cdy20/services/trackbacks/118048.html</trackback:ping><description><![CDATA[<strong>鎯充簡鍑犱釜鏈堛?br />鎹i紦浜嗗崄澶氬ぉ瀹為獙錛屽拰鍒嗘瀽鎼炲嚭鏉ョ殑銆侭P紲炵粡緗戠粶鐨勫紓甯哥偣媯嫻嬪簲鐢ㄥ彲琛屾х爺絀?br />榪欏氨鏄垜鏉叿鐨勬瘯涓氳璁°?br /><br />鍦ㄨ繖浜涙棩瀛愶紝縐帇鐨?榪樻湁 涓鍒囩殑涓鍒囷紝鎴戝け鍘諱簡浣犮?br /></strong><br />         <br /><a href="http://www.shnenglu.com/Files/cdy20/2.4.rar">http://www.shnenglu.com/Files/cdy20/2.4.rar</a><br /><br /><br /><a href="http://www.shnenglu.com/Files/cdy20/2.4.rar"><br /><span style="font-family: '榛戜綋'; font-size: 22pt; font-weight: bold; mso-spacerun: 'yes'"> <p style="text-align: center; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '榛戜綋'; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">鎽?/span><span style="font-family: '榛戜綋'; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">  </span><span style="font-family: '榛戜綋'; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'">瑕?/span><span style="font-family: '榛戜綋'; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: center; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '榛戜綋'; font-size: 16pt; font-weight: bold; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: left; line-height: 150%; margin-top: 0pt; text-indent: 21pt; layout-grid-mode: char; margin-bottom: 0pt" class="p0"><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'">寮傚父鐐規暟鎹槸鎸囨暟鎹泦涓笌浼椾笉鍚屾暟鎹傝繖閮ㄥ垎鏁版嵁鐨勯噺灝忥紝浣嗘槸瀵逛簬鎴戜滑鐨勬棩甯哥敓浜х敓媧葷殑褰卞搷鏋佸ぇ銆傚洜姝わ紝寮傚父鐐規嫻嬭騫挎硾搴旂敤浜庣綉緇滃叆渚墊嫻嬶紝閲戣瀺淇濋櫓錛屽ぉ姘旈鎶ヤ互鍙婃柊鑽爺鍒剁瓑棰嗗煙銆傜浉瀵逛簬澶ч噺鐨勬甯告暟鎹寲鎺樿岃█錛屽紓甯哥偣媯嫻嬭縐頒綔灝忔ā寮忔暟鎹寲鎺樸侭P綆楁硶鏄竴縐嶅父鐢ㄧ殑鏁版嵁鎸栨帢綆楁硶銆備絾鏄疊P綆楁硶榪涜瀹為檯鏁版嵁鐨勫紓甯哥偣鏁版嵁鎸栨帢榪囩▼涓瓨鍦細瀹為檯鏁版嵁鐨勭淮鏁拌緝楂橈紝瀛樺湪鍐椾綑鐗瑰緛鐨勫共鎵幫紝浠ュ強鍦ㄩ珮緇寸壒寰佷笅錛屾暟鎹噺涓嶅厖鍒嗙殑闂銆傚洜姝わ紝鏈枃鍒嗘瀽BP紲炵粡緗戠粶澶勭悊鍚勭鏁版嵁鐨勬儏鍐碉紝騫跺緱鍒頒互涓嬬粨鏋溿傦紙1錛塀P紲炵粡緗戠粶鑳藉杈冨ソ鐨勫垎紱葷壒寰佸崟涓鐨勪豢鐪熸暟鎹紱浣嗘槸錛?錛夌壒寰佺浉浼兼ц緝澶х殑鏁版嵁闆嗭紝闅句互鍒嗙鍒ゆ柇錛涳紙3錛夋甯告暟鎹笉鍏呭垎鎴栬呬笉鍏鋒湁浠h〃鎬э紝鍥犳姝e父鏁版嵁綾誨涔犱笉鍏呭垎錛屼粠鑰屽鑷村紓甯告棤娉曞垽鏂傞拡瀵逛互涓婇棶棰橈紝鏈枃鎻愬嚭浜嗕互涓嬬殑鏀硅繘鎺柦錛氾紙1錛塀P綆楁硶鍓嶈繘琛岀壒寰佺害綆錛堟槧灝勶級浠庝腑閫夊彇鏈夌泭浜庡紓甯告嫻嬬殑鐗瑰緛錛?錛夊紲炵粡緗戠粶铻嶅悎錛屼笉鍚岀緇忕綉緇滆瘑鍒笉鍚岀殑鐗瑰緛錛岀浉浜掑彇闀胯ˉ鐭紝铻嶅悎鍚庡緱鍒版渶緇堢殑緇撴灉銆?/span><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: left; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: left; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: left; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0"><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: left; line-height: 150%; margin-top: 0pt; text-indent: 21pt; margin-bottom: 0pt; margin-left: 21pt" class="p0"><span style="font-family: '榛戜綋'; font-size: 14pt; font-weight: bold; mso-spacerun: 'yes'">鍏抽敭瀛?/span><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'">錛氬紓甯革紝<font face="Times New Roman">BP</font><font face="瀹嬩綋">錛屽紓甯哥偣媯嫻嬶紝紲炵粡緗戠粶</font></span><span style="font-family: '瀹嬩綋'; font-size: 12pt; mso-spacerun: 'yes'"><o:p></o:p></span></p> <p style="text-align: center; line-height: 150%; margin-top: 0pt; margin-bottom: 0pt" class="p0" align="left"><!--endfragment--><br /></p> </span></a><br /><br /><br />寮曠敤璁烘枃娉ㄦ槑鍑哄銆傚鐨勫浗鍐呰繕娌℃湁涓涓漢鍋氾紝鍥藉tmd閮芥槸鑱氱被錛岀緇忕綉緇滃彧鏄緟鍔?<br /><br /><br /><br />add  ps錛氫綘浠弽搴斾篃澶縺鐑堜簡鍚э紒鍚撴鎴戙傜澶у宸ヤ綔鐢熸椿欏哄埄錛亊<img src ="http://www.shnenglu.com/cdy20/aggbug/118048.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/cdy20/" target="_blank">钄′笢璧?/a> 2010-06-17 08:50 <a href="http://www.shnenglu.com/cdy20/archive/2010/06/17/118048.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>O(n)鏃墮棿O(1)杈呭姪絀洪棿錛屽驚鐜Щ浣?/title><link>http://www.shnenglu.com/cdy20/archive/2009/11/26/101964.html</link><dc:creator>钄′笢璧?/dc:creator><author>钄′笢璧?/author><pubDate>Thu, 26 Nov 2009 04:40:00 GMT</pubDate><guid>http://www.shnenglu.com/cdy20/archive/2009/11/26/101964.html</guid><wfw:comment>http://www.shnenglu.com/cdy20/comments/101964.html</wfw:comment><comments>http://www.shnenglu.com/cdy20/archive/2009/11/26/101964.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.shnenglu.com/cdy20/comments/commentRss/101964.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/cdy20/services/trackbacks/101964.html</trackback:ping><description><![CDATA[O(n)鏃墮棿O(1)杈呭姪絀洪棿錛屽驚鐜Щ浣?br><br><br>榪欎竴閬擄紝google鐨勭瑪璇曢錛岀綉鏄撲篃鐢ㄨ繃錛屽鏍$殑鏁版嵁緇撴瀯棰樼洰緋葷粺涔熸湁錛屼箣鍓嶆垜閮芥槸鍗$潃鏈哄櫒鍑虹殑<br><br>鐜板湪鏁寸悊涓涓?br><br>涓 3嬈$炕杞仛娉?br>/*about 寰幆縐諱綅<br>瀹炰緥錛歛bcdefgh 鍚戝乏寰幆縐諱綅3浣?br>     緇撴灉 defghabc<br><br>      1.abc鍋氱炕杞?nbsp;<span style="COLOR: red"> cba</span> defgh<br><br>      2 defgh鍋氱炕杞?nbsp; cba  <span style="COLOR: red">hgfed<br></span>    <br>      3.絎簩緇撴灉鍏ㄩ儴鍦ㄥ仛緲昏漿    鎴愪負  <span style="COLOR: red">defghabc </span>   <br>*/<br><br> <div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">template</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> T</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> reverse(T a[],</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i,</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> j)<br><img id=Codehighlighter1_50_150_Open_Image onclick="this.style.display='none'; Codehighlighter1_50_150_Open_Text.style.display='none'; Codehighlighter1_50_150_Closed_Image.style.display='inline'; Codehighlighter1_50_150_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_50_150_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_50_150_Closed_Text.style.display='none'; Codehighlighter1_50_150_Open_Image.style.display='inline'; Codehighlighter1_50_150_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_50_150_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_50_150_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>     </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(i </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000"> j)<br><img id=Codehighlighter1_75_148_Open_Image onclick="this.style.display='none'; Codehighlighter1_75_148_Open_Text.style.display='none'; Codehighlighter1_75_148_Closed_Image.style.display='inline'; Codehighlighter1_75_148_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif" align=top><img id=Codehighlighter1_75_148_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_75_148_Closed_Text.style.display='none'; Codehighlighter1_75_148_Open_Image.style.display='inline'; Codehighlighter1_75_148_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif" align=top>     </span><span id=Codehighlighter1_75_148_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_75_148_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>             swap(a[i],a[j]);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>             </span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">i;<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>             </span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">j;<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif" align=top>     }</span></span><span style="COLOR: #000000"><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span><span style="COLOR: #000000"><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top>template</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000"> T</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">void</span><span style="COLOR: #000000"> exch1(T a[],</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n,</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> k)<br><img id=Codehighlighter1_202_273_Open_Image style="DISPLAY: inline" onclick="this.style.display='none'; Codehighlighter1_202_273_Open_Text.style.display='none'; Codehighlighter1_202_273_Closed_Image.style.display='inline'; Codehighlighter1_202_273_Closed_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_202_273_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_202_273_Closed_Text.style.display='none'; Codehighlighter1_202_273_Open_Image.style.display='inline'; Codehighlighter1_202_273_Open_Text.style.display='inline';" src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_202_273_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_202_273_Open_Text style="DISPLAY: inline"><span style="COLOR: #000000">{<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>     reverse(a,</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,k</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>     reverse(a,k,n</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif" align=top>     reverse(a,</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,n</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">);<br><img src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div> <br>     reverse(a,0,k-1); //  k/2<br>     reverse(a,k,n-1); // (n-k)/2<br>     reverse(a,0,n-1); //  n/2<br> 涓?k/2+(n-k)/2+k/2=n/2 + n/2  = n<br><br><br>浜?...<br><br><br> <img src ="http://www.shnenglu.com/cdy20/aggbug/101964.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/cdy20/" target="_blank">钄′笢璧?/a> 2009-11-26 12:40 <a href="http://www.shnenglu.com/cdy20/archive/2009/11/26/101964.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>姹傜礌鏁版椂闂存祴璇?/title><link>http://www.shnenglu.com/cdy20/archive/2009/09/22/96913.html</link><dc:creator>钄′笢璧?/dc:creator><author>钄′笢璧?/author><pubDate>Tue, 22 Sep 2009 02:38:00 GMT</pubDate><guid>http://www.shnenglu.com/cdy20/archive/2009/09/22/96913.html</guid><wfw:comment>http://www.shnenglu.com/cdy20/comments/96913.html</wfw:comment><comments>http://www.shnenglu.com/cdy20/archive/2009/09/22/96913.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.shnenglu.com/cdy20/comments/commentRss/96913.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/cdy20/services/trackbacks/96913.html</trackback:ping><description><![CDATA[     鎽樿:   <a href='http://www.shnenglu.com/cdy20/archive/2009/09/22/96913.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/cdy20/aggbug/96913.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/cdy20/" target="_blank">钄′笢璧?/a> 2009-09-22 10:38 <a href="http://www.shnenglu.com/cdy20/archive/2009/09/22/96913.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title> hdu Northcott Game 灝煎鍗氬 (Nimm Game) http://www.shnenglu.com/cdy20/archive/2009/04/23/80816.html钄′笢璧?/dc:creator>钄′笢璧?/author>Thu, 23 Apr 2009 02:56:00 GMThttp://www.shnenglu.com/cdy20/archive/2009/04/23/80816.htmlhttp://www.shnenglu.com/cdy20/comments/80816.htmlhttp://www.shnenglu.com/cdy20/archive/2009/04/23/80816.html#Feedback0http://www.shnenglu.com/cdy20/comments/commentRss/80816.htmlhttp://www.shnenglu.com/cdy20/services/trackbacks/80816.html鏄ㄦ櫄鐑韓錛宎浜嗕釜鑳屽寘錛宼le浜嗘悳绱紙濂戒箙娌$粌鐨勶級錛屽墿涓嬬殑闃熷弸鍑猴紝鏃╀笂鍑轟簡鍗氬紙鐨?br>

Northcott Game

Time Limit : 1000/1000ms (Java/Other)   Memory Limit : 32768/32768K (Java/Other)
Total Submission(s) : 11   Accepted Submission(s) : 3

Font: Times New Roman | Verdana | Georgia

Font Size:

Problem Description

銆銆Tom鍜孞erry姝e湪鐜╀竴縐峃orthcott娓告垙錛屽彲鏄疶om鑰佹槸杈擄紝鍥犳浠栨鐤戣繖涓父鎴忔槸涓嶆槸鏈夋煇縐嶅繀鑳滅瓥鐣ワ紝閮侀椃鐨凾om鐜板湪鍚戜綘姹傛晳浜嗭紝浣犺兘甯府浠栦箞錛?br>娓告垙瑙勫垯鏄繖鏍風殑錛?br>銆銆濡傚浘鎵紺猴紝娓告垙鍦ㄤ竴涓猲琛宮鍒楋紙1 ≤ n ≤ 1000涓? ≤ m ≤ 100錛夌殑媯嬬洏涓婅繘琛岋紝姣忚鏈変竴涓粦瀛愶紙榛戞柟錛夊拰涓涓櫧瀛愶紙鐧芥柟錛夈傛墽榛戠殑涓鏂瑰厛琛岋紝姣忔鐜╁鍙互縐誨姩宸辨柟鐨勪換浣曚竴鏋氭瀛愬埌鍚屼竴琛岀殑浠諱綍涓涓┖鏍間笂錛屽綋鐒惰繖榪囩▼涓笉璁歌秺榪囪琛岀殑鏁屾柟媯嬪瓙銆傚弻鏂硅疆嫻佺Щ鍔紝鐩村埌鏌愪竴鏂規棤娉曡鍔ㄤ負姝紝縐誨姩鏈鍚庝竴姝ョ殑鐜╁鑾瘋儨銆俆om鎬繪槸鍏堜笅錛堥粦鏂癸級銆傚浘1鏄煇涓垵濮嬪眬闈紝鍥句簩鏄疶om縐誨姩涓涓瀛愬悗鐨勫眬闈紙絎竴琛岀殑榛戝瓙宸︾Щ涓ゆ錛夈?br>


鍥?




鍥?

Input

銆銆杈撳叆鏁版嵁鏈夊緇勩傛瘡緇勬暟鎹涓琛屼負涓や釜鏁存暟n鍜宮錛岀敱絀烘牸鍒嗗紑銆傛帴涓嬫潵鏈塶琛岋紝姣忚涓や釜鏁癟i錛孞i (1 ≤ Ti, Ji ≤ m)鍒嗗埆琛ㄧずTom鍜孞erry鍦ㄨ琛屾瀛愭墍澶勭殑鍒楁暟銆?br>銆銆娉ㄦ剰錛氬悇緇勬祴璇曟暟鎹箣闂存湁涓嶅畾鏁伴噺鐨勭┖琛屻備綘蹇呴』澶勭悊鍒版枃浠舵湯銆?/strong>

Output

瀵逛簬姣忕粍嫻嬭瘯鏁版嵁杈撳嚭涓琛屼綘鐨勭粨鏋溿傚鏋滃綋鍓嶅眬闈笅Tom鏈夊繀鑳滅瓥鐣ュ垯杈撳嚭“I WIN!”錛屽惁鍒欒緭鍑?#8220;BAD LUCK!”銆?

Sample Input

3 6
4 5
1 2
1 2
3 6
4 5
1 3
1 2

Sample Output

BAD LUCK!
I WIN!
 /*
  灝煎鍗氬(Nimm Game):
鏈変笁鍫嗗悇鑻ュ共涓墿鍝?涓や釜浜鴻疆嫻佷粠鏌愪竴鍫嗗彇浠繪剰澶氱殑鐗╁搧,瑙勫畾姣忔鑷沖皯鍙栦竴涓?澶氳呬笉闄?鏈鍚庡彇鍏夎呭緱鑳?
榪欑鎯呭喌鏈鏈夋剰鎬?瀹冧笌浜岃繘鍒舵湁瀵嗗垏鍏崇郴,鎴戜滑鐢?a,b,c)琛ㄧず鏌愮灞鍔?棣栧厛(0,0,0)鏄劇劧鏄寮傚眬鍔?鏃犺璋侀潰瀵瑰寮傚眬鍔?閮藉繀鐒跺け璐?絎簩縐嶅寮傚眬鍔挎槸(0,n,n),鍙涓庡鎵嬫嬁璧頒竴鏍峰鐨勭墿鍝?鏈鍚庨兘灝嗗鑷?0,0,0).浠旂粏鍒嗘瀽涓涓?(1,2,3)涔熸槸濂囧紓灞鍔?鏃犺瀵規墜濡備綍鎷?鎺ヤ笅鏉ラ兘鍙互鍙樹負(0,n,n)鐨勬儏褰?
璁$畻鏈虹畻娉曢噷闈㈡湁涓縐嶅彨鍋氭寜浣嶆ā2鍔?涔熷彨鍋氬紓鎴栫殑榪愮畻,鎴戜滑鐢ㄧ鍙?+)琛ㄧず榪欑榪愮畻.榪欑榪愮畻鍜屼竴鑸姞娉曚笉鍚岀殑涓鐐規槸1+1=0.鍏堢湅(1,2,3)鐨勬寜浣嶆ā2鍔犵殑緇撴灉錛?br>1 =浜岃繘鍒?1
2 =浜岃繘鍒?0
3 =浜岃繘鍒?1 (+)
-------
0 =浜岃繘鍒?0 (娉ㄦ剰涓嶈繘浣?
瀵逛簬濂囧紓灞鍔?0,n,n)涔熶竴鏍?緇撴灉涔熸槸0.
浠諱綍濂囧紓灞鍔?a,b,c)閮芥湁a(+)b(+)c =0.
濡傛灉鎴戜滑闈㈠鐨勬槸涓涓潪濂囧紓灞鍔?a,b,c),瑕佸浣曞彉涓哄寮傚眬鍔垮憿錛熷亣璁?nbsp;a < b< c,鎴戜滑鍙灝?nbsp;c 鍙樹負 a(+)b,鍗沖彲,鍥犱負鏈夊涓嬬殑榪愮畻緇撴灉: a(+)b(+)(a(+)b)=(a(+)a)(+)(b(+)b)=0(+)0=0.瑕佸皢c 鍙樹負a(+)b,鍙浠?nbsp;c涓噺鍘?nbsp;c-(a(+)b)鍗沖彲.

 
*/

 #include
<iostream>
 
using namespace std;
 
#define MAXN 10001
int an[MAXN];

 
int Nimm_Game(int n)
 
{
      
int ans=0;
      
      
for(int i=0;i<n;++i){
         ans
^=an[i];        
      }

      
return ans;
 }

int main() 

    
int n,m,a,b;
    
while(scanf("%d %d",&n,&m) !=EOF) 
    

        
forint i=0;i<n;++i){
             scanf(
"%d%d",&a,&b);
             an[i]
=abs(a-b)-1;
         }

        
        
if(!Nimm_Game(n)) printf("BAD LUCK!\n"); 

        
else printf("I WIN!\n"); 
    }
 
    
return 0
}


]]>
濞佷綈澶崥濂?Wythoff Game)http://www.shnenglu.com/cdy20/archive/2009/04/18/80319.html钄′笢璧?/dc:creator>钄′笢璧?/author>Sat, 18 Apr 2009 01:57:00 GMThttp://www.shnenglu.com/cdy20/archive/2009/04/18/80319.htmlhttp://www.shnenglu.com/cdy20/comments/80319.htmlhttp://www.shnenglu.com/cdy20/archive/2009/04/18/80319.html#Feedback3http://www.shnenglu.com/cdy20/comments/commentRss/80319.htmlhttp://www.shnenglu.com/cdy20/services/trackbacks/80319.html闃呰鍏ㄦ枃

]]>
鍥劇畻娉曡繘搴?/title><link>http://www.shnenglu.com/cdy20/archive/2008/10/26/65157.html</link><dc:creator>钄′笢璧?/dc:creator><author>钄′笢璧?/author><pubDate>Sun, 26 Oct 2008 15:33:00 GMT</pubDate><guid>http://www.shnenglu.com/cdy20/archive/2008/10/26/65157.html</guid><wfw:comment>http://www.shnenglu.com/cdy20/comments/65157.html</wfw:comment><comments>http://www.shnenglu.com/cdy20/archive/2008/10/26/65157.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.shnenglu.com/cdy20/comments/commentRss/65157.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/cdy20/services/trackbacks/65157.html</trackback:ping><description><![CDATA[<div>* 姹傛湁鍚戝浘鐨勫己榪為氬垎鏀?(Strongerst Connected Component)(cut)</div> <div>o Kosaraju綆楁硶   <br></div> <div>o Gabow綆楁硶</div> <div>o Tarjan綆楁硶</div> <div>* 姹傛渶灝忕敓鎴愭爲 (Minimal Spanning Trees) (cut)<br></div> <div>o Kruskal綆楁硶(cut杈規洿鏂?</div> <div>o Prim綆楁硶(cut鐐規洿鏂?</div> <div>* 鏈鐭礬寰勯棶棰?cut)</div> <div>o SSSP(Single-source Shortest Paths)</div> <div>* Dijkstra綆楁硶  (cut)<br></div> <div>* Bellman-Ford綆楁硶(SPFA綆楁硶)(cut) </div> <div>o APSP(All-pairs Shortest Paths)</div> <div>* Floyd-Warshall綆楁硶(cut)</div> <div>* Johnson綆楁硶</div> <div>* 緗戠粶嫻侀棶棰?     </div> <div>o 鏈澶х綉緇滄祦</div> <div>* 澧炲箍璺畻娉?/div> <div>* Ford-Fulkerson綆楁硶</div> <div>* Edmonds-Karp綆楁硶</div> <div>* Dinic</div> <div>* 棰勬祦鎺ㄨ繘綆楁硶</div> <div>o 鏈灝忚垂鐢ㄦ祦</div> <div>* 鍥懼尮閰嶉棶棰?nbsp; 錛堥儴鍒哻ut錛?br></div> <div>o 鍖堢墮鍒╃畻娉?cut)</div> <div>o Kuhn-Munkres綆楁硶<br></div> <ul> <li style="BACKGROUND-COLOR: #fff780">o Edmonds' blossom-contraction 綆楁硶<br><br><br> 嬈″皬鐢熸垚鏍?K灝忕敓鎴愭爲)<br>鏈灝忔爲褰㈠浘<br> 鏈灝廗闄愬埗搴︾敓鎴愭爲<br> 鏈浼樻瘮鐜囩敓鎴愭爲(0-1鍒嗘暟瑙勫垝)<br>絎琄鏈鐭礬<br>LP闂浠ュ強Primal-Dual(鍗曠函鍨嬫硶)<br> 鏈澶ф祦(鏈鐭騫胯礬銆佹渶楂樻爣鍙烽嫻佹帹榪?<br> 鏈灝忚垂鐢ㄦ祦(鏈灝忚垂鐢ㄨ礬銆丳rimal-Dual綆楁硶)<br> 浜屽垎鍥炬渶浼樺尮閰?鍘熷-瀵瑰伓KM綆楁硶)<br></li> </ul> <p><br>acm.pku.edu.cn 鐨勶細<br><span style="COLOR: red">鏈灝忕敓鎴愭爲  <br>1251(cut)<br> <br>1258(cut)<br> <br>1789(cut)<br> <br>2485(cut)</span></p> <p style="COLOR: red">鏈鐭礬 <br> <br>1062(cut 寤烘ā鐨勬椂渚娉ㄦ剰 錛屼笉鏂緩絎﹀悎絳夌駭宸殑鍥?鍋氭渶鐭礬寰?<br> <br>1125錛坈ut 鍋氬叏婧愭渶鐭礬<br>   鍐嶅浠ユ瘡鍚勭偣涓烘牴鐨勬爲錛氭壘鏈闀跨殑杈?<br> 鍐嶅姣忔5鏍戠殑鏈闀胯竟 鎵炬渶鐭殑閭d竴鏉?nbsp;  <br> int ans=maxint;<br>    for(i=1;i<=n;i++){<br>      tmp=-1;<br>       for(j=1;j<=n;j++){<br>          tmp=max(tmp,a[i][j]);              <br>       }<br>       if(tmp < ans){ans=tmp;val=i;}<br>    }<br>錛?br> <br>1797(cut<br>    璧風偣鍒皀鐐?璺緞涓?nbsp; 鎵鑳芥壙鍙楃殑 鏈澶ч噸閲忕殑杞?br>       <br>    dist[k]   婧愮偣鍒発 璺緞涓渶灝忕殑閭d釜杈規潈鍊?nbsp;  mat[k][i]杈筴-i鏉冨?nbsp; <br>   鍙栬礬寰?dist[k]  鍜宮at銆恔銆戙恑銆戣竟鏈澶ч偅涓?nbsp; 鏇存柊 dist[i]  )<br> <br>2253(cut 瑕佹眰鐨勪笌 1797鐩稿弽)</p> <p style="COLOR: red"><br></p> <p style="COLOR: red"><br></p> <p style="COLOR: red"><br></p> <p style="COLOR: red"> <meta content=Word.Document name=ProgId> <meta content="Microsoft Word 11" name=Generator> <meta content="Microsoft Word 11" name=Originator> <link href="file:///C:%5CDOCUME%7E1%5CADMINI%7E1%5CLOCALS%7E1%5CTemp%5Cmsohtml1%5C01%5Cclip_filelist.xml" rel=File-List><style> <!-- /* Font Definitions */ @font-face {font-family:瀹嬩綋; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:Verdana; panose-1:2 11 6 4 3 5 4 4 2 4; mso-font-charset:0; mso-generic-font-family:swiss; mso-font-pitch:variable; mso-font-signature:536871559 0 0 0 415 0;} @font-face {font-family:"\@瀹嬩綋"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:瀹嬩綋; mso-font-kerning:1.0pt;} p {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:瀹嬩綋; mso-bidi-font-family:瀹嬩綋;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} --> </style> <p>Johnson綆楁硶閫傜敤浜庢眰All Pairs Shortest Path. Johnson綆楁硶搴旂敤浜嗛噸鏍囧彿鎶鏈紝鍏堣繘琛屼竴嬈ellman-Ford綆楁硶錛岀劧鍚庡鍘熷浘榪涜閲嶆爣鍙鳳紝w'(i,j)=h[i]-h[j]+w(i,j)銆傜劧鍚庡姣忎釜鐐硅繘琛屼竴嬈ijkstra錛屾瘡嬈ijkstra鐨勫鏉傚害涓篛(nlogn+m)錛屼簬鏄畻娉曞鏉傚害涓篛(n^2logn+m)銆?/p> <br> <p> </p> <img src ="http://www.shnenglu.com/cdy20/aggbug/65157.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/cdy20/" target="_blank">钄′笢璧?/a> 2008-10-26 23:33 <a href="http://www.shnenglu.com/cdy20/archive/2008/10/26/65157.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.0546bbs.cn" target="_blank">精品久久久久久亚洲</a>| <a href="http://www.ubmz.cn" target="_blank">亚州日韩精品专区久久久</a>| <a href="http://www.disidai.cn" target="_blank">久久久久亚洲AV片无码下载蜜桃</a>| <a href="http://www.sdhaomai.cn" target="_blank">99久久国产综合精品网成人影院</a>| <a href="http://www.spinpizza.cn" target="_blank">久久美女人爽女人爽</a>| <a href="http://www.cshlyfm.cn" target="_blank">久久99精品久久久久久秒播</a>| <a href="http://www.glkk.net.cn" target="_blank">无码8090精品久久一区 </a>| <a href="http://www.i-ss.com.cn" target="_blank">国产精品9999久久久久</a>| <a href="http://www.ywpc88.cn" target="_blank">国产一级持黄大片99久久</a>| <a href="http://www.hkzkzs.com.cn" target="_blank">国产福利电影一区二区三区久久久久成人精品综合 </a>| <a href="http://www.97xxri.cn" target="_blank">麻豆久久</a>| <a href="http://www.qzlhscqt.cn" target="_blank">老色鬼久久亚洲AV综合</a>| <a href="http://www.chiti.com.cn" target="_blank">99久久精品免费观看国产</a>| <a href="http://www.qhsy210.cn" target="_blank">亚洲精品高清一二区久久 </a>| <a href="http://www.zhzzbjb.cn" target="_blank">99久久精品日本一区二区免费 </a>| <a href="http://www.xbfiyz.cn" target="_blank">伊人久久大香线蕉av不卡</a>| <a href="http://www.hogcn.cn" target="_blank">一本一道久久精品综合</a>| <a href="http://www.win42.cn" target="_blank">久久久久se色偷偷亚洲精品av</a>| <a href="http://www.tdpqb.cn" target="_blank">久久精品国产精品国产精品污</a>| <a href="http://www.fragmentdesign.cn" target="_blank">久久久久亚洲?V成人无码</a>| <a href="http://www.ttyv.cn" target="_blank">狠狠干狠狠久久</a>| <a href="http://www.sunwebs.cn" target="_blank">亚洲精品无码久久久久去q</a>| <a href="http://www.subaidu.cn" target="_blank">国产成人综合久久久久久</a>| <a href="http://www.leyuzhe.cn" target="_blank">久久ww精品w免费人成</a>| <a href="http://www.zgcl.org.cn" target="_blank">久久久国产视频</a>| <a href="http://www.chengrenshop.com.cn" target="_blank">精品视频久久久久</a>| <a href="http://www.122v.cn" target="_blank">一本伊大人香蕉久久网手机</a>| <a href="http://www.wucaitianyuan.cn" target="_blank">久久久无码一区二区三区</a>| <a href="http://www.sangaotang.cn" target="_blank">一级做a爰片久久毛片毛片</a>| <a href="http://www.jkmdz.cn" target="_blank">国产精品午夜久久</a>| <a href="http://www.mdg163.cn" target="_blank">2020最新久久久视精品爱</a>| <a href="http://www.dxctutor.cn" target="_blank">中文无码久久精品</a>| <a href="http://www.510dpw.cn" target="_blank">蜜桃麻豆WWW久久囤产精品</a>| <a href="http://www.bolezi333.cn" target="_blank">久久精品国产亚洲AV不卡</a>| <a href="http://www.ads9.cn" target="_blank">精品国产青草久久久久福利</a>| <a href="http://www.85062.com.cn" target="_blank">久久精品国产亚洲麻豆</a>| <a href="http://www.dq97.cn" target="_blank">国产精品18久久久久久vr</a>| <a href="http://www.qunfaruanjian.org.cn" target="_blank">久久天堂AV综合合色蜜桃网</a>| <a href="http://www.u3h1.cn" target="_blank">日韩精品久久无码人妻中文字幕</a>| <a href="http://www.ltak.cn" target="_blank">伊人久久大香线蕉av一区</a>| <a href="http://www.bddp.com.cn" target="_blank">色天使久久综合网天天</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>