锘??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲精品蜜桃久久久久久,久久人人爽人人澡人人高潮AV,四虎国产精品成人免费久久http://www.shnenglu.com/Yuan/category/14382.htmlzh-cnTue, 09 Aug 2011 08:41:42 GMTTue, 09 Aug 2011 08:41:42 GMT60hdu 3403 鍥炴枃鏃ユ湡http://www.shnenglu.com/Yuan/archive/2011/08/09/152846.html_Yuan_YuanTue, 09 Aug 2011 02:33:00 GMThttp://www.shnenglu.com/Yuan/archive/2011/08/09/152846.htmlhttp://www.shnenglu.com/Yuan/comments/152846.htmlhttp://www.shnenglu.com/Yuan/archive/2011/08/09/152846.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/152846.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/152846.html/**//*    姹傜k<=4000000涓洖鏂囦覆鐨勬棩鏈燂紝涓嶈兘鏈夊墠緗? 濡?0011001    褰㈠紡涓簓...  闃呰鍏ㄦ枃

_Yuan 2011-08-09 10:33 鍙戣〃璇勮
]]>
ural 1720 http://www.shnenglu.com/Yuan/archive/2011/08/01/152243.html_Yuan_YuanMon, 01 Aug 2011 15:14:00 GMThttp://www.shnenglu.com/Yuan/archive/2011/08/01/152243.htmlhttp://www.shnenglu.com/Yuan/comments/152243.htmlhttp://www.shnenglu.com/Yuan/archive/2011/08/01/152243.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/152243.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/152243.html/*
    涓篬l,r]鍖洪棿鍐呮湁澶氬皯涓暟鏄尯闂碵x,y]涓殑鏁扮殑鍜?br />    1 <= x, y, l, r <= 10^8     x <=y, l <= r
    
    濡傛灉鑼冨洿娌¤繖涔堝ぇ鐨勮瘽錛屽[x,y]榪檡-x+1涓墿鍝佽繘琛屽畬鍏ㄨ儗鍖咃紝鎵懼嚭瑕嗙洊浜?jiǎn)閭d簺浣嵕|?br />    鐜板湪鏁版嵁榪欎箞澶э紝鑳屽寘涓嶅彲琛?br />    浣嗘槸錛屾敞鎰忓埌[x,y]榪欐槸涓涓繛緇殑鍖洪棿錛屽彲浠ョ畻鍑轟粬浠細(xì)瑕嗙洊鐨勬暟鏄細(xì)
    [x,y] , [2x,2y]  [kx, ky]
    榪欐牱鐨勮瘽錛屾垜浠鎵炬弧瓚砙l,r]涓殑鏁幫紝鍙鐢╢[r] - f[l-1]
    f[x]琛ㄧず[1,x]涓涓婇潰閭d簺鏁拌鐩栫殑涓暟

    瑕佹敞鎰忕殑鏄紝鏈夊彲鑳絒(k-1)x, (k-1)y]涓嶽kx,ky]鏈夐噸鍙犻儴鍒嗭紙鍗?k-1)y>=kx錛?br />    鍙涓寮濮嬮噸鍙犱簡(jiǎn)錛屼箣鍚庣殑鎵鏈夌偣閮戒細(xì)琚鐩栦簡(jiǎn)

    鏁版嵁姣旇緝澶э紝鏈変簺鍒ゆ柇闇瑕佺敤double
*/
#include
<iostream>
#include
<cstring>
#include
<map>
#include
<algorithm>
#include
<stack>
#include
<queue>
#include
<cstring>
#include
<cmath>
#include
<string>
#include
<cstdlib>
#include
<vector>
#include
<cstdio>
#include
<set>
#include
<list>
#include
<numeric>
#include
<cassert>
#include
<sstream>
#include
<ctime>
#include
<bitset>
#include
<functional>

using namespace std;

long long gao(long long x, long long y, long long z, long long k)
{
    
long long l = 0, r = z;
    
while (l <= r) {//find first l*y >= z
        long long m = (l+r)/2;
        
if ((double)m*< z) l = m+1;//瑕佺敤double
        else r = m-1;
    }
    
long long ans = 0;
    
//[x,y] [2x,2y]  [(l-1)x, (l-1)y], [lx, ly]
    if (l >= k) {
        ans 
= (y-x)*(k-1)*k/2 + (k-1+ (k*> z ? 0 : z-k*x+1);
    } 
else {
        ans 
= (y-x)*(l-1)*l/2 + (l-1+ (l*> z ? 0 : z-l*x+1);
    }
    
return  ans;
}

int main()
{
#ifndef ONLINE_JUDGE
    
//freopen("in.txt","r",stdin);
#endif
    
for (long long x, y, l, r; cin>>x>>y>>l>>r; ){ 
        
if (r < x ) {
            cout
<<0<<endl;
            
continue;
        }
        
if (x == y) {
            cout
<<r/- (l-1)/<< endl;
            
continue;
        }
        
long long lk = 1, rk = y;
        
while (lk <= rk) {
            
long long mk = (lk+rk)/2;
            
//瑕佺敤double
            if ((double)mk*> ((double)mk-1)*y) lk = mk + 1;
            
else rk = mk-1;
        }
        
//[rk*x, oo)

        cout
<<gao(x, y, r, rk) - gao(x, y, l-1, rk)<<endl;
    }
    
return 0;
}


_Yuan 2011-08-01 23:14 鍙戣〃璇勮
]]>
poj 3274 淇濆瓨鐩稿鍊?/title><link>http://www.shnenglu.com/Yuan/archive/2011/07/16/151138.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Sat, 16 Jul 2011 02:40:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2011/07/16/151138.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/151138.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2011/07/16/151138.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/151138.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/151138.html</trackback:ping><description><![CDATA[<div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> --><span style="color: #008000; ">/*</span><span style="color: #008000; "><br />     n涓暟錛屾眰鏈闀跨殑榪炵畫(huà)涓孌碉紝浣垮緱榪欎竴孌墊暟瀛楋紝浜岃繘鍒朵腑姣忎竴浣嶆嫢鏈?鐨勯偅浜涙暟瀛楃殑涓暟鐩哥瓑<br />     n<=10^5錛屼綅鏁発<=30<br />     濡?br />     7 2 1 4 榪欓噷姣忎竴浣?閮芥湁2涓暟瀛楁嫢鏈?br /> <br />     瀹規(guī)槗鎯沖埌鍏堥澶勭悊鍑簊um[n,k]琛ㄧず鍓嶉潰n涓暟瀛椾腑鍦ㄧk浣嶆槸1鐨勪釜鏁?br />     榪檏涓暟瀛梥um[n,k]鐨勬牱瀛愬氨鏄洸綰垮艦鐨勶紝濡俿um[i,k]涓?nbsp;           <br />      _   /\     <br />     /  \/   \_/\    <br />     涓轟簡(jiǎn)浣垮緱sum[i,k] - sum[j,k]瀵規(guī)墍鏈塳閮芥槸鍚屼竴涓暟<br />     鍒檚um[j,k]鐨勬牱瀛愪篃蹇呴』鏄繖鏍風(fēng)殑錛岃繖鏍穝um[i,k] - sum[j,k]鎵嶆槸涓涓悓涓涓暟錛堢被浼兼嫾鎺ユ椂鍥懼艦闇鍚誨悎錛?br />     濂戒簡(jiǎn)錛屾墍浠ユ垜浠渶瑕佷繚瀛樿繖涓浘褰紝鍙互閫氳繃淇濆瓨a[i,k] = sum[i,k] - sum[i,0]鍗沖彲錛堝嵆淇濆瓨鐩稿鍊鹼級(jí)    -----OMG<br /> <br />     鎴戜竴寮濮嬬敤map<vector<int>, int>錛?nbsp;vector<int>鏄繚瀛樺浘褰紝int鏄繚瀛樼涓嬈″嚭鐜扮殑鍦版柟<br />     鍦╢or鍒癷鏃訛紝璁$畻鍑哄浘褰紝鍦╩ap涓壘鏈夋病鍑虹幇榪囷紝鏈夌殑璇濆氨鏇存柊絳旀涓篿-mp[vt]<br />     vector鏄湁閲嶈澆姣旇緝榪愮畻絎︾殑錛屾墍浠ヤ笉鐢ㄥ啓鍏朵粬<br />     浣嗘槸瓚呮椂浜?jiǎn)锛屾垜鍦ㄦ湰鏈簨箣璨屼奸g笉浼?xì)瓒呮?img src="http://www.shnenglu.com/Images/dot.gif" alt="" />  --||<br /> <br />     鐪嬩簡(jiǎn)瑙i鎶ュ憡錛屾柟娉曚竴鏍鳳紝浣嗘槸涓嶆槸鐢╩ap錛屾槸鏈鍚巗ort涓嬈$殑<br />     瀵瑰摝錛屾垜鎯寵搗涔嬪墠涔熸湁涓閬撻錛屽張涓嶉渶瑕佹瘡涓猧閮借緭鍑虹粨鏋滐紝涓嶇敤map錛岀洿鎺ユ渶鍚巗ort涓嬈℃洿濂?br />     鐢╩ap浼?xì)鎱竴鐐?br />     <br />     浣嗚繖鏍瘋繕瓚呮椂錛屽師鏉ユ槸vector鐨勬瘮杈冩瘮杈冩參<br />     鑷繁鍐欎簡(jiǎn)涓猻truct Node {int vt[30];}; 鍐嶉噸杞芥瘮杈冭繃浜?br /> <br />     sort鏃訛紝鍙互瀵逛笅鏍囨帓搴忥紝鍑忓皯浜?jiǎn)澶ф暟鎹U誨姩<br /> <br />     榪欓瀹樻柟鏈夊彟澶栬В娉曪紝灝辨槸瀵規(guī)暟緇剉t[30] hash<br />     濂界殑hash鍑芥暟浼?xì)蹇緢澶氬?br />     hsize=997001;<br />     for(p=0,i=0;i<k;i++)<br />         p=((p<<2)+(v[i]>>4))^(v[i]<<10);<br />     p=p%hsize;<br />     if(p<0)    p+=hsize;<br /> </span><span style="color: #008000; ">*/</span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">iostream</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cstring</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">map</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">algorithm</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">stack</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">queue</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cstring</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cmath</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #0000FF; ">string</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cstdlib</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">vector</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cstdio</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #0000FF; ">set</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">list</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">numeric</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">cassert</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">sstream</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">ctime</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">bitset</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> #include</span><span style="color: #000000; "><</span><span style="color: #000000; ">functional</span><span style="color: #000000; ">></span><span style="color: #000000; "><br /> <br /> </span><span style="color: #0000FF; ">using</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">namespace</span><span style="color: #000000; "> std;<br /> <br /> </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> MAXN </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">100100</span><span style="color: #000000; ">;<br /> <br /> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> n, k;<br /> <br /> </span><span style="color: #0000FF; ">struct</span><span style="color: #000000; "> Node<br /> {<br />     </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> vt[</span><span style="color: #000000; ">30</span><span style="color: #000000; ">];<br />     </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> clear()<br />     {<br />         memset(vt, </span><span style="color: #000000; ">0</span><span style="color: #000000; ">, </span><span style="color: #0000FF; ">sizeof</span><span style="color: #000000; "> vt);<br />     }<br /> };<br /> <br /> </span><span style="color: #0000FF; ">bool</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">operator</span><span style="color: #000000; "> </span><span style="color: #000000; "><</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> Node </span><span style="color: #000000; ">&</span><span style="color: #000000; ">A, </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> Node </span><span style="color: #000000; ">&</span><span style="color: #000000; ">B) </span><span style="color: #008000; ">//</span><span style="color: #008000; ">鐩存帴鐢╲ector鐨勬瘮杈冧細(xì)鎱?img src="http://www.shnenglu.com/Images/dot.gif" alt="" />  鍙兘鏁版嵁澶ぇ鍚?/span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">{<br />     </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> i </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">; i </span><span style="color: #000000; "><</span><span style="color: #000000; "> k </span><span style="color: #000000; ">-</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">; i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />         </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (A.vt[i] </span><span style="color: #000000; ">!=</span><span style="color: #000000; "> B.vt[i]) {<br />             </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> A.vt[i] </span><span style="color: #000000; "><</span><span style="color: #000000; "> B.vt[i];<br />         }<br />     }<br />     </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">false</span><span style="color: #000000; ">;<br /> }<br /> <br /> pair</span><span style="color: #000000; "><</span><span style="color: #000000; ">Node, </span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">></span><span style="color: #000000; "> all[MAXN];<br /> <br /> inline </span><span style="color: #0000FF; ">bool</span><span style="color: #000000; "> cmp(</span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">a, </span><span style="color: #0000FF; ">const</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">&</span><span style="color: #000000; ">b)<br /> {<br />     </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> all[a] </span><span style="color: #000000; "><</span><span style="color: #000000; "> all[b];<br /> }<br /> <br /> </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> main()<br /> {<br /> #ifndef ONLINE_JUDGE<br />     freopen(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">in</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">"</span><span style="color: #000000; ">r</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,stdin);<br /> </span><span style="color: #0000FF; ">#endif</span><span style="color: #000000; "><br />     <br />     </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (; </span><span style="color: #000000; ">~</span><span style="color: #000000; ">scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%d%d</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #000000; ">&</span><span style="color: #000000; ">n, </span><span style="color: #000000; ">&</span><span style="color: #000000; ">k); ) {<br />     </span><span style="color: #008000; ">//</span><span style="color: #008000; ">    long long start = clock();</span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">        vector</span><span style="color: #000000; "><</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">></span><span style="color: #000000; "> vt(k</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">), pos(n</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">);<br />         all[</span><span style="color: #000000; ">0</span><span style="color: #000000; ">].first.clear();</span><span style="color: #008000; ">//</span><span style="color: #008000; ">don't forget to push k-1 zeros</span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">        all[</span><span style="color: #000000; ">0</span><span style="color: #000000; ">].second </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />         pos[</span><span style="color: #000000; ">0</span><span style="color: #000000; ">] </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />         <br />         vector</span><span style="color: #000000; "><</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">></span><span style="color: #000000; "> sum(k);<br />         </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> i </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, x; i </span><span style="color: #000000; "><=</span><span style="color: #000000; "> n; i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />             scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%d</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, </span><span style="color: #000000; ">&</span><span style="color: #000000; ">x);<br />             </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> j </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">; j </span><span style="color: #000000; "><</span><span style="color: #000000; "> k; j</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />                 sum[j] </span><span style="color: #000000; ">+=</span><span style="color: #000000; "> (x</span><span style="color: #000000; ">>></span><span style="color: #000000; ">j) </span><span style="color: #000000; ">&</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />                 </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (j </span><span style="color: #000000; ">></span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">) {<br />                     all[i].first.vt[j</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">] </span><span style="color: #000000; ">=</span><span style="color: #000000; "> sum[j] </span><span style="color: #000000; ">-</span><span style="color: #000000; "> sum[j</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">];<br />                 }<br />             }<br />             all[i].second </span><span style="color: #000000; ">=</span><span style="color: #000000; "> i;<br />             pos[i] </span><span style="color: #000000; ">=</span><span style="color: #000000; "> i;<br />         }<br />         sort(pos.begin(), pos.end(), cmp);<br />         </span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> ans </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />         </span><span style="color: #0000FF; ">for</span><span style="color: #000000; "> (</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> i </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">1</span><span style="color: #000000; ">, last </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">; i </span><span style="color: #000000; "><=</span><span style="color: #000000; "> n</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">; i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {<br />             </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (i </span><span style="color: #000000; ">==</span><span style="color: #000000; "> n</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; "> </span><span style="color: #000000; ">||</span><span style="color: #000000; ">  all[pos[i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]].first </span><span style="color: #000000; "><</span><span style="color: #000000; "> all[pos[i]].first) {<br />                 ans </span><span style="color: #000000; ">=</span><span style="color: #000000; "> max(ans, all[pos[i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">]].second </span><span style="color: #000000; ">-</span><span style="color: #000000; "> all[pos[last]].second);<br />                 last </span><span style="color: #000000; ">=</span><span style="color: #000000; "> i;<br />             }<br />         }<br />         printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%d\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">, ans);<br />     </span><span style="color: #008000; ">//</span><span style="color: #008000; ">    cout<<"time   "<<clock() - start<<endl;</span><span style="color: #008000; "><br /> </span><span style="color: #000000; ">    }<br />     </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br /> }</span></div> <img src ="http://www.shnenglu.com/Yuan/aggbug/151138.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2011-07-16 10:40 <a href="http://www.shnenglu.com/Yuan/archive/2011/07/16/151138.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>CF78D 緇熻鐨勬柟娉?/title><link>http://www.shnenglu.com/Yuan/archive/2011/05/13/146298.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Fri, 13 May 2011 01:27:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2011/05/13/146298.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/146298.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2011/05/13/146298.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/146298.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/146298.html</trackback:ping><description><![CDATA[<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img id=Codehighlighter1_0_321_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_321_Open_Text.style.display='none'; Codehighlighter1_0_321_Closed_Image.style.display='inline'; Codehighlighter1_0_321_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_0_321_Closed_Image onclick="this.style.display='none'; Codehighlighter1_0_321_Closed_Text.style.display='none'; Codehighlighter1_0_321_Open_Image.style.display='inline'; Codehighlighter1_0_321_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_0_321_Closed_Text>/**/</span><span id=Codehighlighter1_0_321_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    濡傛灉鎵紺虹殑6杈瑰艦鍥撅紝璇㈤棶鍗婂緞涓簉鐨勫渾鑳藉畬鏁村寘鍚灝戜釜6杈瑰艦<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    涓寮濮嬫兂鎵捐寰嬶紝wa<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    <br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鐪嬩簡(jiǎn)瑙i鎶ュ憡錛岃В娉曞緢濂?img src="http://www.shnenglu.com/Images/dot.gif">.<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鍏堝悜涓婃壘鍒版渶楂樼殑琚畬鍏ㄥ寘鍚殑6杈瑰艦錛岀劧鍚庡線鍙充笂璧?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鑻ュ彸涓婅秺鐣屼簡(jiǎn)錛屽氨涓嬩竴灞?img src="http://www.shnenglu.com/Images/dot.gif">.灝辮繖鏍?img src="http://www.shnenglu.com/Images/dot.gif">.涓杈硅蛋涓杈圭粺璁?img src="http://www.shnenglu.com/Images/dot.gif">          ---------------------OMG<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    <br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鑻ヤ互涓棿閭e潡鐨勪腑蹇?jī)湄?fù)鍧愭爣鍘熺偣鐨勮瘽錛屽彲浠ュ彂鐜版墍浠ュ叚杈瑰艦鐨勯《鐐圭殑鍧愭爣浼?xì)鏄?1/2x, sqrt(3)/2y)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    濡?0.5, sqrt(3)/2)絳夛紝榪欓噷x,y鏄暣鏁?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    涓嶈秴榪囧渾灝辨湁x*x + 3*y*y <= 4*r*r<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鐒跺悗x,y鍙互鐢ㄦ暣鏁扮偣鍘昏蛋錛岀敤涓婇潰鐨勮〃杈懼紡鍘誨垽鍑虹晫<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    浠g爜鏄湅絎竴鍚嶇殑閭d釜~~~Orz<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif"></span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstdio</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cmath</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">algorithm</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br><img id=Codehighlighter1_429_1013_Open_Image onclick="this.style.display='none'; Codehighlighter1_429_1013_Open_Text.style.display='none'; Codehighlighter1_429_1013_Closed_Image.style.display='inline'; Codehighlighter1_429_1013_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_429_1013_Closed_Image onclick="this.style.display='none'; Codehighlighter1_429_1013_Closed_Text.style.display='none'; Codehighlighter1_429_1013_Open_Image.style.display='inline'; Codehighlighter1_429_1013_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_429_1013_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_429_1013_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">freopen("in", "r" ,stdin);</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_497_997_Open_Image onclick="this.style.display='none'; Codehighlighter1_497_997_Open_Text.style.display='none'; Codehighlighter1_497_997_Closed_Image.style.display='inline'; Codehighlighter1_497_997_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_497_997_Closed_Image onclick="this.style.display='none'; Codehighlighter1_497_997_Closed_Text.style.display='none'; Codehighlighter1_497_997_Open_Image.style.display='inline'; Codehighlighter1_497_997_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> r; cin </span><span style="COLOR: #000000">>></span><span style="COLOR: #000000"> r;) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_497_997_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_497_997_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> ans </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> x </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">, y </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_595_625_Open_Image onclick="this.style.display='none'; Codehighlighter1_595_625_Open_Text.style.display='none'; Codehighlighter1_595_625_Closed_Image.style.display='inline'; Codehighlighter1_595_625_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_595_625_Closed_Image onclick="this.style.display='none'; Codehighlighter1_595_625_Closed_Text.style.display='none'; Codehighlighter1_595_625_Open_Image.style.display='inline'; Codehighlighter1_595_625_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">        </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000"> (x</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">x </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">y</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">y </span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">4</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_595_625_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_595_625_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            y </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">        }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        y </span><span style="COLOR: #000000">-=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        ans </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> y;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">鍙充笂瑙掗偅鍧?/span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">        y </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        x </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_726_963_Open_Image onclick="this.style.display='none'; Codehighlighter1_726_963_Open_Text.style.display='none'; Codehighlighter1_726_963_Closed_Image.style.display='inline'; Codehighlighter1_726_963_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_726_963_Closed_Image onclick="this.style.display='none'; Codehighlighter1_726_963_Closed_Text.style.display='none'; Codehighlighter1_726_963_Open_Image.style.display='inline'; Codehighlighter1_726_963_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">        </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000"> (y </span><span style="COLOR: #000000">>=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_726_963_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_726_963_Open_Text><span style="COLOR: #000000">{<br><img id=Codehighlighter1_807_902_Open_Image onclick="this.style.display='none'; Codehighlighter1_807_902_Open_Text.style.display='none'; Codehighlighter1_807_902_Closed_Image.style.display='inline'; Codehighlighter1_807_902_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_807_902_Closed_Image onclick="this.style.display='none'; Codehighlighter1_807_902_Closed_Text.style.display='none'; Codehighlighter1_807_902_Open_Image.style.display='inline'; Codehighlighter1_807_902_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (x</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">x </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">y</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">y </span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">4</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r </span><span style="COLOR: #000000">&&</span><span style="COLOR: #000000"> (x</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(x</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">) </span><span style="COLOR: #000000">+</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(y</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">(y</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">) </span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">4</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">r ) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_807_902_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_807_902_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                ans </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">y;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                y </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">寰鍙充笂</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">                x </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_909_953_Open_Image onclick="this.style.display='none'; Codehighlighter1_909_953_Open_Text.style.display='none'; Codehighlighter1_909_953_Closed_Image.style.display='inline'; Codehighlighter1_909_953_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_909_953_Closed_Image onclick="this.style.display='none'; Codehighlighter1_909_953_Closed_Text.style.display='none'; Codehighlighter1_909_953_Open_Image.style.display='inline'; Codehighlighter1_909_953_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">            }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_909_953_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_909_953_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                y </span><span style="COLOR: #000000">-=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">涓嬫潵涓鏍?/span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif"></span><span style="COLOR: #000000">            }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">        }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        cout</span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> ans </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div> <img src ="http://www.shnenglu.com/Yuan/aggbug/146298.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2011-05-13 09:27 <a href="http://www.shnenglu.com/Yuan/archive/2011/05/13/146298.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>76D 姣旇緝宸?/title><link>http://www.shnenglu.com/Yuan/archive/2011/05/02/145489.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Mon, 02 May 2011 06:29:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2011/05/02/145489.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/145489.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2011/05/02/145489.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/145489.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/145489.html</trackback:ping><description><![CDATA[<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img id=Codehighlighter1_0_325_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_325_Open_Text.style.display='none'; Codehighlighter1_0_325_Closed_Image.style.display='inline'; Codehighlighter1_0_325_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_0_325_Closed_Image onclick="this.style.display='none'; Codehighlighter1_0_325_Closed_Text.style.display='none'; Codehighlighter1_0_325_Open_Image.style.display='inline'; Codehighlighter1_0_325_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_0_325_Closed_Text>/**/</span><span id=Codehighlighter1_0_325_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    緇欏嚭A,B ,姹俋,Y錛屼嬌寰?nbsp;A = X + Y, B = X xor Y銆傝浣垮緱X鏈灝忥紝鑻ヤ笉瀛樺湪杈撳嚭-1<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    0<=A,B<2^64<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鐪嬩簡(jiǎn)瑙i鎶ュ憡鐨勶紝鎸哄閥鐨勶紝鍒囧叆鐐規(guī)槸錛?#8220;浣垮緱X鏈灝?#8221;  -----------------OMG<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鑻?X,Y)鏄弧瓚蟲(chóng)潯浠剁殑涓瀵規(guī)暟錛屽垯媯(gè)鏌ユ瘡涓浣?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鑻i = 1, Yi = 0 鍒欏彲浜ゆ崲榪欎袱浣嶏紝涓婇潰鐨勭瓑寮忚繕鏄垚绔嬶紝浣嗘槸X鍑忓皬浜?jiǎn)锛孻澧炲ぇ浜?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    瀹屾垚涓婇潰鐨勬搷浣滃悗錛?X,Y)鐨勬儏鍐靛彧鑳芥槸(0,1),(0,0),(1,1)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鍒欐湁 Y - X = X xor Y = B                          -------------------OMG<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鎵浠?nbsp;X = (A-B)/2 , Y = (A+B)/2<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    宸т斧<img src="http://www.shnenglu.com/Images/dot.gif">..<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif"></span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">iostream</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstring</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">map</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">algorithm</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">stack</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">queue</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cmath</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">string</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstdlib</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">vector</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstdio</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #0000ff">set</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">list</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">numeric</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cassert</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">ctime</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">bitset</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br><img id=Codehighlighter1_648_1103_Open_Image onclick="this.style.display='none'; Codehighlighter1_648_1103_Open_Text.style.display='none'; Codehighlighter1_648_1103_Closed_Image.style.display='inline'; Codehighlighter1_648_1103_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_648_1103_Closed_Image onclick="this.style.display='none'; Codehighlighter1_648_1103_Closed_Text.style.display='none'; Codehighlighter1_648_1103_Open_Image.style.display='inline'; Codehighlighter1_648_1103_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_648_1103_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_648_1103_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">#ifndef ONLINE_JUDGE<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    freopen(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">in</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">r</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,stdin);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #0000ff">#endif</span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img id=Codehighlighter1_749_1090_Open_Image onclick="this.style.display='none'; Codehighlighter1_749_1090_Open_Text.style.display='none'; Codehighlighter1_749_1090_Closed_Image.style.display='inline'; Codehighlighter1_749_1090_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_749_1090_Closed_Image onclick="this.style.display='none'; Codehighlighter1_749_1090_Closed_Text.style.display='none'; Codehighlighter1_749_1090_Open_Image.style.display='inline'; Codehighlighter1_749_1090_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (unsigned </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> A, B; cin</span><span style="COLOR: #000000">>></span><span style="COLOR: #000000">A</span><span style="COLOR: #000000">>></span><span style="COLOR: #000000">B; ) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_749_1090_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_749_1090_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">A = X + Y, B = X ^ Y .  X is minimal<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">swap(xi,yi) if xi = 1 and yi = 0,  the equalities above mantian.<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">after all the swaping, we can find that<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">(xi,yi) can only be (0,1) , (0,0), (1,1)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">so X ^ Y = Y - X = B</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_1007_1034_Open_Image onclick="this.style.display='none'; Codehighlighter1_1007_1034_Open_Text.style.display='none'; Codehighlighter1_1007_1034_Closed_Image.style.display='inline'; Codehighlighter1_1007_1034_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_1007_1034_Closed_Image onclick="this.style.display='none'; Codehighlighter1_1007_1034_Closed_Text.style.display='none'; Codehighlighter1_1007_1034_Open_Image.style.display='inline'; Codehighlighter1_1007_1034_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif"></span><span style="COLOR: #000000">        </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000"> (((A</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">) </span><span style="COLOR: #000000">^</span><span style="COLOR: #000000"> (B</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)) </span><span style="COLOR: #000000">||</span><span style="COLOR: #000000"> A </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000"> B) </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_1007_1034_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1007_1034_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> endl;<br><img id=Codehighlighter1_1041_1087_Open_Image onclick="this.style.display='none'; Codehighlighter1_1041_1087_Open_Text.style.display='none'; Codehighlighter1_1041_1087_Closed_Image.style.display='inline'; Codehighlighter1_1041_1087_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_1041_1087_Closed_Image onclick="this.style.display='none'; Codehighlighter1_1041_1087_Closed_Text.style.display='none'; Codehighlighter1_1041_1087_Open_Image.style.display='inline'; Codehighlighter1_1041_1087_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">        }</span></span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_1041_1087_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_1041_1087_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            cout </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> (A</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">B)</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">"</span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000"> (A</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">B)</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000">endl;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">        }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div> <img src ="http://www.shnenglu.com/Yuan/aggbug/145489.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2011-05-02 14:29 <a href="http://www.shnenglu.com/Yuan/archive/2011/05/02/145489.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>zoj 3491 浼樺厛闃熷垪 寰堝閥 璺嚎鐨勭紪鐮?/title><link>http://www.shnenglu.com/Yuan/archive/2011/04/28/145215.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Thu, 28 Apr 2011 06:50:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2011/04/28/145215.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/145215.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2011/04/28/145215.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/145215.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/145215.html</trackback:ping><description><![CDATA[     鎽樿: /**//*    N琛岋紝鏈塎涓兊灝革紝鏈塊涓潥鏋滐紝鎸夐『搴忎粠緇欏畾綰胯礬姘村鉤婊氬嚭    鍧氭灉鎾炲埌鍍靛案鎴栬呰竟鐣岄兘浼?xì)鏀瑰彉璧\綰夸互45°婊氬姩錛岄棶鏈鍚庡灝戝彧鍍靛案琚挒鍒頒簡(jiǎn)    N<=2000, M<=200000, K<=100000 &...  <a href='http://www.shnenglu.com/Yuan/archive/2011/04/28/145215.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/Yuan/aggbug/145215.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2011-04-28 14:50 <a href="http://www.shnenglu.com/Yuan/archive/2011/04/28/145215.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>ural 1113 Jeep problemhttp://www.shnenglu.com/Yuan/archive/2011/03/23/142606.html_Yuan_YuanWed, 23 Mar 2011 12:32:00 GMThttp://www.shnenglu.com/Yuan/archive/2011/03/23/142606.htmlhttp://www.shnenglu.com/Yuan/comments/142606.htmlhttp://www.shnenglu.com/Yuan/archive/2011/03/23/142606.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/142606.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/142606.html/*
    Jeep闂
    
http://en.wikipedia.org/wiki/Jeep_problem

    
http://topic.csdn.net/t/20020906/13/1001713.html
    

    涓杞﹁絀胯秺娌欐紶錛岃窛紱諱負(fù)dist,娌圭鑳借鐨勬補(bǔ)tank錛屾瘡琛岃蛋1鍗曚綅鑰楁補(bǔ)1鍗曚綅
    杞﹀彲浠ヨ椹跺埌涓棿涓浜涗綅緗紝鏀句竴浜涙補(bǔ)鏂逛究浠ュ悗鐢ㄥ啀鍥炲幓鍔犳補(bǔ)錛岃搗鐐規(guī)湁鏃犻檺鐨勬補(bǔ)鍙互鍔?br>    闂渶灝戣楃殑娌硅蛋瀹岃繖涓孌佃礬

    杞︾殑杞ㄨ抗濡備笅錛屽亣璁句腑闂存湁n涓綅緗斁浜?jiǎn)嫜a(bǔ)

    S ---->鈼?br>      <---
       --------------->鈼?br>      <---------------
      ---------------------------------------->鈼?br>      <---------------------------------------
      --------------------------------------------------------------------------> E
    
    wiki涓婄殑璇存硶鏄紝鍋囪娌圭瀹歸噺涓?
    絎竴嬈¤椹?/(2n-1),鐒跺悗鍦ㄧ涓涓姞娌圭珯鏀?-2/(2n-1)鐨勬補(bǔ),鍐嶇敤鍓╀笅鐨?/(2n-1)鍒氬ソ鍥炲埌S
    浠ュ悗鐨勮椹朵腑錛岃鍒扮涓涓姞娌圭珯鏃訛紝鍔?/(2n-1)鐨勬補(bǔ)錛屾墍浠ユ補(bǔ)綆辮繕婊★紝鐒跺悗鍐嶅洖鍒扮涓涓姞娌圭珯鏃訛紝
    鍙?/(2n-1)錛屽氨鑳藉洖鍒癝浜?br>    鎵浠涓庣涓涓姞娌圭珯鐨勮窛紱誨氨鏄?/(2n-1)
    鑰岀浜屼釜鍔犳補(bǔ)绔欎笌絎竴涓殑璺濈錛屽氨鏄?/(2n-3)浜?nbsp;     鍥犱負(fù)浠庣涓涓補(bǔ)绔欏嚭鍙戞椂娌規(guī)槸婊$殑錛岃琚彇2n-3嬈?br>    絎笁涓笌絎簩涓負(fù)1/(2n-5)
    .
    鍒頒簡(jiǎn)鏈鍚庝竴涓補(bǔ)绔欐椂錛屽姞娌瑰悗灝辨槸婊$殑錛屼竴鐩村紑瀹屽埌E
    鎵浠ユ渶鍚庝竴涓補(bǔ)绔欑E涓?
    
    涓婂浘灝辮鏄庯紝鍒拌揪涓涓補(bǔ)绔欐椂錛屽畠鐨勬補(bǔ)鑲畾鏄弧鐨勶紙鍙栬蛋榪囨潵鐨勫悇涓補(bǔ)绔欑殑涓浜涙補(bǔ)濉厖榪欎竴璺秷鑰楃殑娌癸級(jí)
    絳旀灝辨槸錛屼粠E寰S
    璧扮殑璺濈1 + 1/3 + 1/5  + 1/(2n-1)
    
    褰撶劧錛孲紱葷涓涓補(bǔ)绔欑殑璺濈鍙互灝忎簬1/(2n-1)

    round up 鏄彇涓婄晫

    foj 1076涓鏍風(fēng)殑
    鍙﹀涓縐峧eep闂灝辨槸瑕佹眰鏈鍚庡洖鍒癝鐨勶紝璧扮殑璺濈1+1/2+1/3
*/

#include
<iostream>
#include
<cstring>
#include
<map>
#include
<algorithm>
#include
<stack>
#include
<queue>
#include
<cmath>
#include
<string>
#include
<cstdlib>
#include
<vector>
#include
<cstdio>
#include
<set>
#include
<list>
#include
<numeric>
#include
<cassert>
#include
<ctime>

using namespace std;


int main()
{
#ifndef ONLINE_JUDGE
    freopen(
"in","r",stdin);
#endif

    
double dist, tank;
    scanf(
"%lf%lf"&dist, &tank);
    
double now = dist, cost = 0, pre;
    
int k = 1;
    
while( (pre = now - tank / (2*k-1)) > 0){
        cost 
+= tank;
        now 
= pre;
        k
++;
    }

    cost 
+= now * (2*k-1);
    printf(
"%.0f\n", ceil(cost));
    
return 0;    
}


_Yuan 2011-03-23 20:32 鍙戣〃璇勮
]]>
CodeForces 66http://www.shnenglu.com/Yuan/archive/2011/03/08/141327.html_Yuan_YuanTue, 08 Mar 2011 02:30:00 GMThttp://www.shnenglu.com/Yuan/archive/2011/03/08/141327.htmlhttp://www.shnenglu.com/Yuan/comments/141327.htmlhttp://www.shnenglu.com/Yuan/archive/2011/03/08/141327.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/141327.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/141327.html闃呰鍏ㄦ枃

_Yuan 2011-03-08 10:30 鍙戣〃璇勮
]]>
璐村仛棰樿褰?..http://www.shnenglu.com/Yuan/archive/2011/01/05/138035.html_Yuan_YuanWed, 05 Jan 2011 12:12:00 GMThttp://www.shnenglu.com/Yuan/archive/2011/01/05/138035.htmlhttp://www.shnenglu.com/Yuan/comments/138035.htmlhttp://www.shnenglu.com/Yuan/archive/2011/01/05/138035.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/138035.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/138035.htmlfoj 1982 dp 璁懼叾涓竴涓凡鐭?br>/*
 http://hi.baidu.com/topman3758/blog/item/a19e4af91effb975034f56d2.html
 鍒漢璇寸殑綆鍗昫p錛屾垜閮戒笉浼?xì)鍋?...#_#

 棰樼洰緇欏嚭涓涓覆n<=1000 涓插彧浼?xì)鍑虹幇a,b,c涓夌瀛楃
 abc鎴朾ca鍙垏鎴愪竴鍧?br> 璁炬渶鍚庡垏鍑簃0涓猘bc , m1涓猙ca錛屽垯絳旀涓簃in{m0,m1}
 姹傝瘯絳旀鏈澶?/p>

 dp[i,j]琛ㄧず鍓嶉潰i涓瓧絎﹀垏鍑轟簡(jiǎn)j涓猘bc錛岃兘鑾峰緱鐨勬渶澶歞p[i,j]涓猙ca

 杞Щ鏄湅鏈鍚庤繖涓笁涓瓧姣嶆槸浠涔?br> dp[i-3,j-1]    “abc”
 dp[i-3,j]+1   "bca"
 dp[i-1,j]

 娉ㄦ剰dp[i,j]  3*j<=i  錛?瀵逛簬涓嶅瓨鍦ㄧ殑鍊間笉鑳藉紩鐢紝鍚﹀垯浼?xì)鍑洪敊锛佸Q?/p>

 璨屼技榪欑鏈変袱涓姹傚肩殑錛岄兘鏄鎴愪竴涓凡鐭?br> 濡傝繖閲屽墠i涓紝鏈塲涓猘bc
 
*/


zoj 3449

 

/*

涓涓暟瀛梐錛堟渶澶?00000浣嶏級(jí)錛屾湰鏉 = 鈭慳i*10^i錛屼笉鏂彉?shù)负a' = 鈭慳i*x^i (x=1,2...9) 銆?/p>

鐩磋嚦a‘<10 錛屾眰姝ゆ椂鐨刟'


姣旇緝鍙樺寲鍓嶅悗鐨勭粨鏋滐紝鍙戠幇鍙樺寲鍚庡噺灝戜簡(jiǎn)鈭慳i(10^i-b^i)

涓寮濮嬫垜灝辯敤Java澶ф暣鏁板幓閫艱繎錛堝噺鍘?0^i-b^i錛夛紝浣垮緱緇撴灉瓚嬭繎浜?0涓斿皬浜?0

瓚呮椂浜?/p>


鐪嬩簡(jiǎn)watashi鐨勶紝鈭慳i*10^i = 鈭慳i*x^i  (mod 10-x)

“浜庢槸鎴戜滑鐭ラ亾瀵?0-b姹傛ā鏄叧浜庤繖縐嶈繍綆楃殑涓嶅彉閲忥紝鍙互鍙戠幇絳旀灝辨槸b+(n-10)%(10-b)”


鍏跺疄鎴戜箣鍓嶇殑閭d釜涓嶆柇閫艱繎錛屽叾瀹炲氨鏄?mod 10 - x 鑰屽凡錛岃剳孌嬩簡(jiǎn)錛侊紒錛?/p>

鍥犱負(fù)(a^n - b^n) % (a-b) = 0


鍙互鍑犱綅鍚堝湪鍐峬od浼?xì)蹇?/p>

鏈鍚庣粨鏋滆涓嶆柇鍔犱笂10-x錛屼嬌寰楅艱繎浜?0

*/

 

zoj 3450

 

/*

涓涓畾鐐筽0錛宯涓洰鏍囩偣 錛屾瘡涓洰鏍囩偣鏈夋晫浜簑i,瑕佹秷鐏鐐歸渶瑕乼i鏃墮棿

寮辯洰鏍囩偣鍦ㄥ悓涓鐩寸嚎錛屽繀欏誨厛娑堢伃榪戠殑鎵嶈兘娑堢伃榪滅殑

闂湪T鏃墮棿鍐呮渶澶氳兘娑堥櫎鐨勬晫浜?/p>


鍒嗙粍鑳屽寘


娉ㄦ剰鐨勬槸錛屽潗鏍囨瘮杈冨ぇ錛岀敤double浼?xì)绮惧害涓嶅?/p>

鐪嬩簡(jiǎn)watashi鐨勫仛娉?/p>

浠栧皢鍧愭爣閮介櫎浠ヤ粬浠殑gcd 錛岀浉絳夌殑灝辨槸鍚屼竴鐩寸嚎浜?jiǎn)锛岃実cd灝辯敤鏉ュ垽鏂窛紱諱簡(jiǎn)錛侊紒

榪欐牱灝嗗ぇ鏁板彉灝忎簡(jiǎn)錛侊紒錛?/p>


娉ㄦ剰鐨勬槸gcd(abs(x),abs(y))瑕佸姞緇濆鍊?/p>

*/


zoj 3451

 

/*

緇欏嚭瓚崇悆璧風(fēng)偣鍧愭爣錛屽垵閫熷害澶у皬錛屽垵閫熷害鏂瑰悜錛岄棶鐞冭兘涓嶈兘榪涖?/p>

鐞冩瘡紕板湴涓嬈¢熷害鍑忓崐


鍙傝僿atashi鐨?/p>


娉ㄦ剰鏈夊姏閲忎笉瓚崇殑鎯呭喌

*/

zoj 3453
/*
涓鍒楁晫浜猴紝姣忎釜鏁屼漢鏈夌敓鍛藉糽[i]
鍝嗗暒A姊﹀彲浠ュ彂灝刴涓硸琛g偖寮癸紝姣忎釜鐐脊浼?xì)鏀诲嚴(yán)L渶闈犺繎鍙寵竟鐨勪笖鐢熷懡鍊?gt;=ki鐨勬晫浜?/div>
琚敾鍑葷殑鏁屼漢鐢熷懡鍊煎彉?shù)?錛岃鏁屼漢浼?xì)灏嗕粬鐨勬湅鍙嬬殑鐢熷懡鍊?1錛屽叾鏈嬪弸鍖洪棿涓篴[i],b[i]
濡傛灉鎵句笉鍒版晫浜猴紝鍒欐墍鏈夋晫浜虹敓鍛藉?1
姹傛渶鍚庣敓鍛藉兼渶澶х殑

note : 綰挎鏍?wèi)鏌ユ壘婊…懴x(chóng)潯浠剁殑鏈闈犺繎鍙寵竟鐨勫啓娉?/div>
*/

 

 zoj 3354

 

/*

緇欏嚭涓縐嶆槧灝刦,闂竴涓簭鍒楃粡榪囦換鎰忔鏄犲皠鐨勫鍚堬紝闂兘寰楀埌澶氬皯縐嶄笉鍚岀殑鏂囨湰

"he may encrypt the letter for several times. "

here may be ai=aj when i≠j. 涓嶆槸涓涓鏄犲皠

濡傛灉鏄竴涓鏄犲皠鐨勶紝灝辨槸涓涓竴涓殑鐜簡(jiǎn)錛堝洜涓哄嚭搴︺佸叆搴︿負(fù) 1錛?/p>


鐪媤atashi鐨?/p>

榪欓灝卞彉鎴愮幆寮曞嚭灝懼反鍑烘潵浜?/p>

絳旀灝辨垚浜?jiǎn)锛?xì)max{x[i]} + LCM{y[i]}

x[i]涓哄熬宸撮暱搴︼紝y[i]涓虹幆闀垮害

娉ㄦ剰姹倄[],y[]鏁扮粍鐨勬柟娉曪紝鐢ㄦ爤


鑰屾眰LCM鏃訛紝瑕佸垎瑙h川鍥犲瓙鎵嶈

鍥犱負(fù)LCM(a%MOD,b%MOD) != LCM(a,b)%MOD

*/

zoj 3456
/*

緇欏嚭涓涓浘錛屾瘡澧炲姞涓鏉¤竟錛岄棶鑳藉惁浠?鐐歸亶鍘嗘墍鏈夌偣鍥炲埌0鐐癸紝姹傛渶灝忔椂闂?/div>
鍦ㄤ竴涓偣鏈夊仠鐣欐椂闂磗tay[i]錛岀粡榪囪竟涔熸湁鏃墮棿錛屼絾鏈澶氬彧鑳界粡榪噉-1鏉′笉鍚岀殑杈?/div>

棰樼洰璇翠簡(jiǎn)鏄竴媯墊爲(wèi)錛屽彲浠ヤ護(hù) 杈規(guī)潈 = 2*鍘熻竟鏉?stay[u]+stay[v]
鍒橫ST鍗充負(fù)絳旀浜?/div>

絳旀鏄眰鑳藉惁鍦ㄤ竴騫村唴璁塊棶瀹岋紝娉ㄦ剰鏈夐棸騫?/div>
鐪媤atashi鍐欐硶鐨?/div>
淇濈暀鍘熸湁MST鐨勮竟鍗沖彲浜?jiǎn)锛屾柊鍔犲叆鐨勮竟锛岄渶灝忎簬MST鐨勬渶澶ц竟錛屾墠鍏佽鍔犲叆錛岀劧鍚庣湅鑳藉惁寰楀埌鏇村皬鐨勫?/div>
浣嗘瘡嬈′笅鏉ワ紝鍙渶淇濈暀n-1鏉¤竟錛圡ST鐨勮竟錛?/div>

*/

 

cf 56E

/*

n寮犲綾寵楠ㄧ墝鎺掓垚涓琛岋紝姣忎竴寮犲湪浣嶇疆xi錛岄珮搴︿負(fù)hi

瀹冨掍笅鐨勮瘽浼?xì)濯?jiǎng)鍝嶅埌[xi,xi+hi-1]錛岄棶姣忓紶楠ㄧ墝鏈澶氳兘褰卞搷鍙寵竟鐨勫灝戝紶楠ㄧ墝


浠p[i]琛ㄧず絎琲寮犻鐗岃兘褰卞搷鍒扮殑鏈榪滅殑楠ㄧ墝涓篸p[i]

dp[i] = max{dp[j]}   x[i] <= x[j] <= x[i] + h[i] - 1

鍒欑i寮犻鐗岃兘褰卞搷鍒扮殑楠ㄧ墝鏁扮洰涓篸p[i] - i + 1

鎴戜竴寮濮嬬敤綰挎鏍?wèi)鎼炲Q岀敤鍗曡皟闃熷垪涔熻


鐪嬩簡(jiǎn)鍒漢浠g爜錛岀濂囷紝鐩存帴綆楀氨琛屼簡(jiǎn)

絎琲寮犻鐗岋紝媯(gè)鏌ョ殑鑼冨洿鏄痆x[i],x[i]+h[i]-1]

濡傛灉鍦ㄦ鏌ヨ繃紼嬩腑鍙戠幇j錛屽叾涓璬p[j]鑳藉獎(jiǎng)鍝嶇殑鏈榪滆寖鍥村凡緇忚秴榪噚[i]+h[i]-1鐨勮瘽錛屽氨涓嶇敤鍐嶆鏌涔嬪悗鍒皒[i]+h[i]-1

鐨勯鐗屼簡(jiǎn)錛屽洜涓轟粠x[j]鍒皒[i]+h[i]-1鐨勫凡緇忚j鑰冭檻榪囦簡(jiǎn)錛堜篃鍙涓烘槸j鍒皒[i]+h[i]-1鏈鍚庡彧浼?xì)鏀舵暃鍒癲p[j]錛?/p>

鐩存帴return dp[j]鍗沖彲

鍙嶄箣錛岃嫢鏈秴榪囷紝鍒欎護(hù) j = dp[j] + 1

璺寵穬鎬ф鏌?/p>

錛堣涓簀鍒癲p[j]鏀舵暃鍒癲p[j]浜?jiǎn)锛屾墍浠ヤ笅嬈℃鏌p[j]+1錛?/p>

*/



CF57D
/*
 棰樻剰錛歯,m鐨勭綉鏍鹼紝鏈変竴浜泂tatic particles錛岃瀹氫換鎰忎袱涓笉鑳藉湪鍚屼竴琛屻佸垪錛屼笉鑳藉湪鐩擱偦鐨勫瑙掔嚎
  A dynamic particle閫夋嫨闈瀞tatic鐨刢ell浣滀負(fù)璧風(fēng)偣鍜岀粓鐐癸紝鐒跺悗浠庤搗鐐歸夋嫨鏈鐭礬寰勮蛋鍒扮粓鐐癸紙涓嶇粡榪?br>  static particles錛夈傞棶騫沖潎璺暱

  鍙傝瑙i鎶ュ憡錛?a X'鍒版墍鏈夌偣璺濈鍜?2 + 'X'鍒?X'璺濈鍜?2
                                                                       榪欓噷澶氬噺浜?鍊?X'鍒?X'鐨勶紝鎵浠ヨ鍔犱笂
  鏈鍚庯紝鍐嶅姞涓婂洜涓?X'瀛樺湪瑕佺粫璺渶瑕佸鍔犵殑璺濈
*/


CF 58D
/*
 棰樻剰錛歯涓崟璇嶏紙lowercase錛夛紝鍏堣鍒嗘垚n/2琛岋紝姣忚2涓崟璇嶏紝涓や釜鍗曡瘝鐢ㄥ垎闅旂d闅斿紑
 瑕佷嬌寰楁墍鏈夎涓茶搗鏉ュ瓧鍏稿簭鏈灝忥紝闂浣曞畨鎺掓瘡涓よ鐨勫崟璇?br> 
 鍒嗛殧絎鍙互<'a' , > 'z'
 鑻ュ凡鐭ョ涓涓崟璇嶏紝閭d箞瑕佷嬌瀛楀吀搴忔渶灝忥紝絎?涓崟璇嶈偗瀹氭槸闀垮害涓篴vg-lena涓瓧鍏稿簭鏈灝忕殑鍗曡瘝
 avg鏄瘡涓琛屼袱涓崟璇嶇殑闀垮害鍜?br> 
 鍙互鍏堟寜鐓?鍗曡瘝+d 鏉ユ帓搴忥紝鐒跺悗鎸変粠灝忓埌澶у畨鎺?br> 姣忎釜鎺掑湪鍓嶉潰鐨勫崟璇嶏紝鐒跺悗鍔犱笂闀垮害涓篴vg-lena涓瓧鍏稿簭鏈灝忕殑鍗曡瘝
*/


SRM 496 PalindromfulString 瀹規(guī)枼鍐欐硶  鈽呪槄鈽呪槄
/*
 闂暱搴︿負(fù)N鐨勫瓧絎︿覆(uppercase)涓紝鑷沖皯鏈塊涓暱搴︿負(fù)M鐨勫洖鏂囦覆鐨勪釜鏁?br> N<=11

 涓寮濮嬫垜鍦ㄩ偅閲宒p鎺紝鍙戠幇鏈夐噸澶嶄箣綾葷殑涓滆タ涓嶅ソ鎼?br> 鐪嬩簡(jiǎn)Sevenkplus鐨勶紝瀹規(guī)枼錛屾劅瑙夊ソ紲炲
 
 鏈澶氭湁P = N - M + 1涓洖鏂囦覆
 鐢變簬瑙勬ā姣旇緝?yōu)畯锛屾灇鋴D閫夊嚭鍝嚑涓綔涓哄洖鏂囦覆錛屼嬌寰楄嚦灝戞湁K涓紝浠よ繖涓ā寮忎負(fù)Ti
 錛堝N = 3, M= 2 , K = 1 錛屼竴涓悎娉曠殑妯″紡涓?010錛?br> 鍒欑瓟妗堜負(fù)|T0∪T1...∪Tc|錛岃繖閲屽氨瑕佺敤鍒板鏂ヤ簡(jiǎn)
 = 鈭憒Ti|
   -鈭憒Ti∩Tj|
   +鈭憒Ti∩Tj∩Tk|
   ...
     鐩存帴濂楃敤鐨勮瘽澶嶆潅搴︿負(fù)2^(2^P) 錛侊紒

  涓庡鉤甯哥殑瀹規(guī)枼鏈夌偣涓嶄竴鏍鳳紝榪欓噷瀛樺湪寰堝“Tj鍖呭惈浜嶵i”錛屽嵆鍏朵氦闆嗗氨鏄瓙闆嗕簡(jiǎn)
  濡?11鍖呭惈浜?10
  鍥犱負(fù)婊¤凍011鐨勮偗瀹氭弧瓚?10錛屾墍浠?11鏄?10鐨勫瓙闆嗭紝榪欓噷娉ㄦ剰浜?jiǎn)锛佸Q佷簩榪涘埗鏋氫婦Ti鐨勮秴闆員j錛屾槸妯″紡Ti鐨勫瓙闆?/p>

  鐢諱釜闊︽仼鍥撅紝涓涓泦鍚圱j瑕佽綆楃殑嬈℃暟灝辨槸鍏堝噺鍘誨叾浣欓泦鍚圱i鍦ㄨ繖閮ㄥ垎綆楃殑嬈℃暟錛堝噺瀹屽氨涓虹┖浜?jiǎn)锛?jí)錛屽啀鍔犱笂1
  鍗充負(fù) 1 - 鍏朵綑闆嗗悎Ti鍦ㄨ繖閮ㄥ垎綆楃殑嬈℃暟
 鐢╪um[i]琛ㄧず闆嗗悎Ti闇瑕佺畻鐨勬鏁幫紝鍒檔um[i] = 1 - 鈭憂um[ii]  ii涓篿鐨勮秴闆?br> for(int j = i+1 ; j < (1<<P) ; j++)
 {
  if((j & i) == i)//j鏄痠鐨勫瓙闆?br>   num[j] -= num[i];
 }
 鎵浠ラ泦鍚圱i瀵圭瓟妗堢殑璐$尞涓?ans += num[i]*26^cnt
 O((2^p)^2)
 cnt涓洪泦鍚圱i鐙珛鍙橀噺鐨勪釜鏁?br> 瀵筎i,姹傜嫭绔嬪彉閲忕殑涓暟錛屽彲浠ュ厛寤哄浘錛堝埄鐢ㄥ洖鏂囦覆涓ょ鐩哥瓑鐨勬ц川錛夛紝鐒跺悗dfs綆楀嚭榪為氬潡鐨勪釜鏁板氨鏄嫭绔嬪彉閲忕殑涓暟浜?br>*/


TCO'10 Qualification Round 1A 1000pt MegadiamondHunt
/*
 灝嗗彧鍚湁'<','>'鐨勪覆錛屾瘡嬈″幓鎺?lt;..<>..>榪炵潃鐨勫嚑涓?br> 濡傛灉鍘繪帀涓湁n瀵癸紝鍒欏緱鍒嗕負(fù)n^2
 姹傛渶澶у緱鍒?br> 
 涓寮濮嬩互涓哄幓鎺夌殑欏哄簭娌″叧緋伙紝榪囦笉浜?jiǎn)鏈鍚庝竴涓猻ample
 鐪嬩簡(jiǎn)LayCurse鐨勪唬鐮侊紝瀹冩槸姣忔閫夋嫨 鏋佸ぇ鐨?lt;..<>..>涓渶灝忕殑涓涓幓鎺?br> 榪欐牱瀛愬幓璐績(jī)...
 濡?<<<>><>>
 濡傛灉鍏堝幓鎺?lt;<>>錛岀劧鍚庡墿涓?lt;<>> 寰楀垎涓?2^2+2^2
 浣嗚嫢鍏堝幓鎺?lt;>錛屽垯鍓╀笅<<<>>> 寰楀垎涓?1 + 3^2
 鍥犱負(fù)錛岃冭檻涓涓瀬澶х殑<..<>..>,鑻ュ畠鑳芥墿澶э紝鍒欏畠鐨勫乏鍙寵偗瀹氬厛鍘繪帀浜?jiǎn)涓涓?br> 鏋佸ぇ鐨?lt;..<>..>錛屽鏋滃凡鍘繪帀鐨勯偅涓瘮褰撳墠鐨勫ぇ錛屽緱鍒嗘槸涓嶄細(xì)姣斿厛鍘繪帀褰撳墠
 榪欎釜杈冨皬鐨勫ぇ錛屾墍浠ユ瘡嬈¢夋瀬澶т腑鐨勬渶灝忛偅涓幓鎺?br>*/


zoj 3458
/*
 0 < b - a < 1 + 2sqrt(a)  姹?floor(sqrt(a)+sqrt(b))^n % 2(a+b)

 鐪媤atashi鐨勶紝娌℃帴瑙﹁繃榪欑闂錛屽仛娉曟尯紲炲( 鈯?o 鈯?)錛?/p>

 鐢?0 < b - a < 1 + 2sqrt(a)
  => 0 < sqrt(b) - sqrt(a) < 1
 浠n = (sqrt(b)+sqrt(a))^2n = (b+a+2sqrt(ab))^n
    Yn = (sqrt(b)-sqrt(a))^2n = (b+a-2sqrt(ab))^n
    Zn = Xn +Yn = (b+a+2sqrt(ab))^n + (b+a-2sqrt(ab))^n
 
 鐢變簬X1 = b+a+2sqrt(ab) , Y1 = b+a-2sqrt(ab)
 鏄柟紼?U-X1)(U-Y1) = 0 錛屽嵆 U^2 - 2(a+b)U + (a-b)^2 = 0 鐨勬牴
 鍒?span style="BACKGROUND-COLOR: yellow">Zn+2 = 2(a+b)Zn+1 - (a-b)^2Zn
 鐢ㄧ煩闃典箻娉曞彲浠ユ眰寰梈n
 鐢變簬Yn<1 錛屾墍浠loor(Xn) = Zn - 1錛屾墍浠ユ渶鍚庣瓟妗圸n-1鍗沖彲

 浠ヤ笂鏂規(guī)硶鏈変釜鍦版柟
 “
 鐢變簬X1 = b+a+2sqrt(ab) , Y1 = b+a-2sqrt(ab)
 鏄柟紼?U-X1)(U-Y1) = 0 錛屽嵆 U^2 - 2(a+b)U + (a-b)^2 = 0 鐨勬牴
 鍒橺n+2 = 2(a+b)Zn+1 - (a-b)^2Zn
 ”
 鎴戜笉澶噦錛屾煡浜?jiǎn)涓嬬壒寰佹牴鐨勪竴鐐逛笢瑗?br> 鑻n+2 = pAn+1 +qAn
 鍒橝n = C1α^n + C2β^n
 涓婇潰搴旇鏄嗚繃鏉?br> 鐢盳n = Xn +Yn = (b+a+2sqrt(ab))^n + (b+a-2sqrt(ab))^n
 鎺ㄥ嚭Zn+2 = 2(a+b)Zn+1 - (a-b)^2Zn
*/


zoj 3461
/*
 緇欏嚭涓涓棤鍚戝浘錛屾湁杈規(guī)潈錛岀偣鏉冦傜偣鏉僾al[i]涓烘鐨勮〃紺鴻灝唙al[i]鍒嗗嚭緇欑偣鏉冧負(fù)璐熺殑錛屾瘡涓偣鍙互浣滀負(fù)涓棿鑺傜偣
 鐐規(guī)潈val[i]涓鴻礋鐨勮〃紺鴻鎺ユ敹val[i]錛屼紶閫佺殑鑺辮垂涓鴻礬寰勭殑璺濈錛屾眰鏈灝忚窛紱?br> n<=16

 鎸夌収棰樻剰錛岃姳璐瑰嵆涓衡垜val[i] = 0 鐨勬爲(wèi)鐨凪ST 
 鎴戞湁鎯寵繃闇瑕佸垝鍒嗘垚鍑犻儴鍒嗭紝璧峰垵娌℃兂榪囨庝箞鍒掑垎

 瑙i鎶ュ憡鏄?span style="BACKGROUND-COLOR: yellow">鏋氫婦瀛愰泦浣滀負(fù)涓閮ㄥ垎鏍?/span>錛宒p姹傝В錛坣閭d箞灝忥紝瑕佸線闆嗗悎鏂歸潰鎯沖惂錛侊級(jí)
 鍗砫p[mask] = dp[mask^i] + mst[i];
 娉ㄦ剰闇瑕乻um[mask] = 0 鐨勬墠鏈夋剰涔?br>*/


zoj 3463
/*
 涓鍙墜錛岀浉瀵規(guī)媷鎸囦笉鍔紝鑷沖皯瑕佸崰5涓敭鐨勪綅緗紝鑷沖鍙互寮瑰埌9涓敭銆?br> 鎷囨寚縐誨姩璺濈x闇瑕佽姳璐筬loor(sqrt(x))錛屽凡鐭ュ乏鍙蟲(chóng)墜鍒濆浣嶇疆鍜屾帴涓嬫潵
 闇瑕佸脊濂忕殑1000涓敭錛屾眰鏈灝忚姳璐廣?/p>

 鐘舵佹瘮杈冩槑鏄撅紝dp[n,l,r]琛ㄧず宸茬粡寮逛簡(jiǎn)n涓煶絎︼紝宸︺佸彸鎵嬫媷鎸囧垎鍒湪l,r
 鐨勬渶灝忎唬浠?br> 鏃犳晥鐘舵佸緢澶氾紝涓嶈兘璁$畻錛屽惁鍒欎細(xì)瓚呮椂
 鏋氫婦宸﹀彸鎵嬪埌闇瑕佸脊鐨勪綅緗紝鍏朵粬鎯呭喌涓嶇敤鑰冭檻錛屼笉浼?xì)鏇翠?/p>

 榪欏彞璇濅笉澶噦錛?But, one finger touching the key between two fingers of the other hand is fobidden."
 璨屼技涓嶇敤澶勭悊錛?br> 
 鐪媤atashi鐨勪唬鐮佺殑
 sqrt鐨勫垵濮嬪寲寰堟紓浜?/p>

 hdu 3651鏄畝鍖栫増錛?span style="BACKGROUND-COLOR: yellow">閮芥槸鏃犳晥鐘舵佷笉鐢ㄧ畻錛屽喅絳栨槸鐩存帴鍒伴渶瑕佺殑浣嶇疆
*/


zoj 3464
/*
 N涓漢錛岃搗鍒濆湪涓鏉$嚎涓娿?br> 姣忎釜浜烘湁閫熷害vi錛屼笖姣忎釜浜烘渶澶氬彧鑳借窇甯︾潃媯扵s錛岄棶鏈蹇椂闂存帴媯掕窇瀹孡

 璐績(jī)錛屾渶蹇殑浜鴻窇鏈鍚嶵s錛屽掓暟絎簩蹇殑璺戝掓暟絎簩Ts...
*/



TCO'10 Wildcard Round 500pt CalculationCards
/*
 n<=50寮犲崱 濡?寮狅細(xì)+1 ,-2 , *3  鍏舵帓鍒楁湁
 0 + 1 - 2 * 3 = -5
 0 + 1 * 3 - 2 = 1
 0 - 2 + 1 * 3 = 1
 0 - 2 * 3 + 1 = -5
 0 * 3 + 1 - 2 = -1
 0 * 3 - 2 + 1 = -1
 鏈熸湜涓?1.6666666666666667
 姹傜粰瀹氱殑n寮犲崱鐨勬湡鏈涘?/p>

 鐪嬭В棰樻姤鍛?a 10+Wildcard+Round
 浠ュ強(qiáng)bmerry浠g爜鐨?/p>

 涓嶅彲鑳絥!鐨勬灇涓?br> 璁?銆?鍗″叡鏈塻寮?br> 鎸夌収涓涓?銆?鍗″悗鎺ヨ繛緇殑*鍗″垎綾伙紝鍒欐湁s閮ㄥ垎錛屽叾鍏ㄦ帓鍒椾笉褰卞搷鏈熸湜錛堟誨叡s!縐嶏紝浣嗘湡鏈涢兘涓鏍鳳級(jí)
 鎵浠ュ彧鑰冭檻鏃犲簭鐨勶紙鏃犲簭鍙互鐢ㄩ粯璁ょ殑涓縐嶉『搴忥紝鍗沖崱鍑虹幇鐨勫厛鍚庨『搴忥紝鎴栬呰緙栧彿錛?br> ***a1***a2*** ... as***
 ***琛ㄧず*鍗?br> 鐢變簬鏄瓑姒傜巼鐨勶紝鎵浠ユ諱綋鏉ョ粺璁★紝姣忎釜+銆?鍗¢兘浼?xì)鎺ュ悓鏍风?鍗★紝
 鏃㈢劧姣忓紶+銆?鍗℃儏鍐典竴鏍鳳紝閭e氨鑰冭檻a1鍗?br> 鍏跺悗浼?xì)鎺?,1...,m寮?鍗?br> 絳旀灝辨槸 sum * (0,1,...m)寮?鍗$殑鏈熸湜   sum = 鈭慳i
 姹俴寮?鍗$殑鏈熸湜鍙互鐢╠p鍋?br> 鐪媌merry浠g爜鐨勫仛娉曪紝瑙i鎶ュ憡鐨勯夯鐑?chǔ)涓鐐瑰惂
 涓寮濮嬪彧鏈塻寮燼鍗℃帓鐫錛岀劧鍚庢彃鍏ヤ竴寮犲紶*鍗?br> dp[i,j]琛ㄧず鎻掑叆浜?jiǎn)鍓嶉潰i寮?鍗★紝a1鍚庢帴j寮?鍗★紝瀹冧滑鏋勬垚鐨勬湡鏈涘?br> 鍒嗙i寮犲崱鎻掍笉鎻掑叆鍒癮1涔嬪悗鏋勬垚j寮犺繛緇殑*鍗★紝姒傜巼涓?璇ユ彃鍏ョ殑浣嶇疆/鎬諱綅緗?br> dp[i,j] =
    dp[i-1,j] * (n-j-1)/n
   + m[i]*dp[i-1,j-1] * j/n
 n涓簊+i

 榪欓亾棰樹(shù)竴涓緢濂界殑鎯蟲(chóng)硶灝辨槸絳旀涓簊um * (0,1,...m)寮?鍗$殑鏈熸湜   sum = 鈭慳i   錛侊紒錛侊紒錛侊紒
 鑰屾眰鍚庢帴k寮?鍗$殑鏈熸湜錛宐merry鐨勫仛娉曟槸涓寮犱竴寮犲崱鎻掑叆錛岀劧鍚庢眰寰楁湡鏈?br> 灝忚妯″埌澶ц妯★紝閫氳繃鑰冭檻鎻掑叆浣嶇疆鏉ュ疄鐜幫紝榪欎釜鍋氭硶搴旇杈冨ソ
*/


TCO 2010 Qualification Round 1 250pt
/*
 棰樻剰錛氫竴涓彧鏈塀,G緇勬垚鐨勪覆錛岃灝嗕粬浠瑂wap鐩擱偦鐨勶紝鍙樻垚BB...GG鎴朑G...BB
 姹傛渶灝戠殑嬈℃暟  涓查暱<=50
 鎴戠敤n^2鐨勬眰閫嗗簭瀵癸紝澶參浜?br> 鐪嬩簡(jiǎn)鍒漢鐨勶紝鐩存帴灝辨槸绱灝嗘瘡涓瓧姣岯縐誨埌宸﹁竟鐨勬鏁?br> if(row[i] == 'B')
 {
  tot += i - x;
  x ++;
 }
 x鏄綋鍓嶉渶瑕佹斁B鐨勪綅緗紝浜ゆ崲鍚庡氨++縐誨埌涓嬩釜浣嶇疆
*/



TCO'10 Qualification Round 2 1000pt HandlesSpelling
/*
 緇欏嚭涓涓枃鏈覆錛屼竴浜涙ā寮忎覆
 鐜拌灝嗘ā寮忎覆瑕嗙洊鏂囨湰涓詫紝涓嶈兘鏈夐噸鍙犻儴鍒?br> 姹備嬌寰桝^2 - B 鏈澶?br> A鏄渶闀胯鐩栫殑闀垮害錛孊鏄繕鏈鐩栫殑涓暟

 涓寮濮嬩竴鐩村叧娉ˋ^2 - B 錛屼笉鐭ユ庝箞鍋?br> 瑙i鎶ュ憡鏄垎寮鏉ュ仛
 瑕佹眰寰桝^2 - B鐨勬渶澶у鹼紝鍙互閫氳繃鏋氫婦A
 鏋氫婦鏌愪竴孌典綔涓烘渶澶ц鐩栧鹼紝鐒跺悗鐪嬪叾宸﹀彸鏈鐩栫殑涓暟

 鑰岃綆椾負(fù)瑕嗙洊鐨勪釜鏁板彲浠ラ氳繃dp浜?br> dp[i,j]琛ㄧず[i,j]涓鴻鐩栫殑涓暟
 鏋氫婦[i,i']涓孌墊槸琚鐩栫殑錛屽垯絳旀灝辨槸min(dp[i'+1,j])
 娉ㄦ剰鐨勬槸錛屽垵濮嬪寲鏈変簺dp[i,j]=0錛屽氨鐩存帴continue
*/


SRM 216 Refactoring
/*
 闂竴涓暟n<=2*10^9 鍙互鎷嗗垎鎴愬灝戠鍥犲瓙鐩鎬箻鐨勬儏鍐?br> 24 = 2*2*2*3
   = 2*2*6
   = 2*3*4
   = 2*12
   = 3*8
   = 4*6
 
 涓嶉渶瑕侀珮娣辯殑鏁板鐭ヨ瘑錛侊紒錛?br> 鏆村姏dfs鍋?br> f(n) = 1 + 鈭慺(n/i) 
 i 涓哄叾鍥犲瓙,i > 1 && i <= n/i錛堜繚璇佷笉浼?xì)杩涘叆澶氫綑鐨勫垎鏀Q?br> 涓轟簡(jiǎn)淇濊瘉鏃犲簭錛屽彲浠ュ鍔犱竴涓弬鏁皊tart錛岃〃紺鴻杞殑鍥犲瓙>=start
*/



SRM 223 PrimeAnagrams
/*
 緇欏嚭涓涓暟瀛椾覆len<=8
 姹傚皢鍏跺垎涓轟笁閮ㄥ垎錛屾瘡閮ㄥ垎閮芥槸绱犳暟錛屼笖涔樼Н鏈灝?/p>

 鐪嬭В棰樻姤鍛婄殑
 8! = 40320 錛岃屽垎鎴?閮ㄥ垎鎯呭喌涓篊(7,2) = 21縐?br> 鎵浠ユ灇涓懼叏鎺掑垪錛岀劧鍚庡垎鎴?閮ㄥ垎鏉ュ仛

 Brute Force 錛侊紒錛侊紒錛侊紒
*/


zoj 3471 mask dp
/*
 n<=10涓悆錛宨紕癹浼?xì)漶旂敓a[i,j]鐨勮兘閲忥紝j鍚屾椂浼?xì)娑堝?br> 闂渶澶氫駭鐢熺殑鑳介噺涔嬪拰
 
 鎴戠煡閬撹窡mask鏈夊叧錛屼負(fù)鍟ヨ繕鏄兂涓嶅嚭錛?br> 
 瑕佷粠鏁翠綋鏉ョ湅錛侊紒
 鐜板湪鏈変竴浜涚悆錛屾帺鐮佷負(fù)mask
 鍋囪鏈鍏堢鎾炵殑鏄痷->v錛岀劧鍚巚娑堝け浜?br> 灞闈㈠氨鍙樻垚浜?jiǎn)娌℃湁v鐨勪竴浜涚悆浜? mask^(1<<v)錛屼竴涓瓙闂?shù)?br> 鎵浠ヨ漿縐誨氨鏄灇涓緐,v
 dp[mask] = max(dp[mask^(1<<v)+a[u][v]) 

 浠庡眬闈㈡潵鐪嬪惂錛侊紒錛?/span>

 涓寮濮嬫垜鏄儚zoj 3461 dp[mask] = dp[mask^i] + mst[i];
 鍙戠幇浼?xì)鍑洪棶棰樺Q?span style="BACKGROUND-COLOR: yellow">榪欐牱瀛愭槸闅旂浜?jiǎn)涓閮ㄥ垎錛屼絾鏄劇劧闅旂浜?jiǎn)鍚庝細(xì)涓㈠ぷ兒?jiǎn)榪炴帴鐫涓ら儴鍒嗙殑閭d釜鍊?br> 
*/

 



zoj 3470
/*
 濡傚浘錛岄棶鏌愪釜鏁板瓧涓婁笅宸﹀彸鐨勬暟瀛楁槸澶氬皯
 鏃㈢劧棰樼洰緇欎簡(jiǎn)涓鍓搴旂殑鍧愭爣錛屽彂鐜幫紝闂鐨勯噸鐐瑰氨鍦ㄤ簬鐐瑰潗鏍囪窡鏁板瓧鐨勮漿鎹?br> 
 鎴戞槸鍏堟壘鍑烘暟瀛梫al鍦ㄧn鍦?鍗?(n-1)^2 < val <= n^2
 鐒跺悗璇ュ湀鐨勮搗鐐箂tart灝辨槸(n-1)^2 + 1 錛?鐒跺悗閫氳繃姣旇緝start錛屽氨鑳芥眰鍑哄潗鏍囦簡(jiǎn)
 鍙戠幇濂囨暟鍦堜細(xì)浣縨inx--,miny-- ; 鍋舵暟鍦堜細(xì)浣縨axx++,maxy++
 鏁伴噺鍏崇郴鏄痬inx = miny = -(n-1)/2 , maxx = maxy = n/2
 
 鐒跺悗鐐?x,y)杞寲涓哄鹼紝璺熶笂闈㈢被浼肩殑
 姹傚嚭絎琻鍦?nbsp; 浜屽垎鍒ゆ柇 minx<=x<=maxx , miny<=y<=maxy
 鐒跺悗姹傚嚭瑙掕惤鐨勭偣絳夌瓑...
*/


zoj 3468
/*
 Dice娓告垙錛屼竴寮濮婣ttacker Defender鍚勬湁楠板瓙n,m涓?br> 鍙屾柟鎷垮嚭涓瀹氶瀛愭潵鎶曪紝绱鍜?br> 璋佸鐐硅皝璧?br> Attacker鎷垮嚭鑷沖皯1涓潵鏀誨嚮
 闂瓵ttacker涓嬈℃敾鍑昏耽鐨勬鐜?br> 楠板瓙鏁扮洰<=8
 鏋氫婦Attacker鎶曞嚭鐨勫拰涓簀錛岀劧鍚庤綆楄揪鍒癹鐨勬柟娉曟暟錛屼互鍙?qiáng)Defender鎶曞嚭鐨勫拰灝忎簬j鐨勬柟娉曟暟
 
 鐢ㄨ儗鍖呯殑鏂規(guī)硶璁$畻鏂規(guī)硶鏁?br>*/

CF 60D
/*
 n<=10^6涓偣錛屾瘡涓偣鏈夋潈鍊糰[i]<=10^7 鍚勪笉鐩稿悓
 鑻ュ瓨鍦ㄤ竴涓暟x錛屼嬌寰梐[i],a[j],x   is a beautiful triple
 鍗砤^2 + b^2 = c^2   a,b,c浜掔礌
 鍒檌鍙互浼犳挱laugh鍒癹
 闂渶灝戦渶瑕侀渶瑕佽澶氬皯涓《鐐硅嚜琛宭augh錛岀劧鍚庝紶鎾埌鍏ㄩ儴鐨勯《鐐?/p>

 鐪嬩簡(jiǎn)瑙i鎶ュ憡鐨?br> 騫舵煡闆嗗仛
 浣嗗浣曞垽鏂璪eautiful triple 涓や袱鍒ゆ柇O(n^2)浼?xì)瓒呮?/p>

 鏈変釜鎬ц川錛氬浜庢弧瓚砤^2 + b^2 = c^2鐨勬暟錛屽彲鐢ㄥ嬀鑲℃暟鍏紡鐢熸垚錛?br> (x^2-y^2 , 2xy , x^2+y^2)  x>y
 璇ュ叕寮忚兘鐢熸垚鎵鏈夌殑绱犲嬀鑲℃暟錛堜簰璐級(jí)錛岄渶1濂?鍋?錛屼笖gcd(x,y) = 1
 涔熻兘鐢熷嚭閮ㄥ垎媧劇敓鍕捐偂鏁?濡?6 8 10) 錛?2濂囨垨2鍋?br> 
 鐢變簬a[i]<=MAX       MAX= 10^7
 鎵浠ュ繀鏈墄^2-y^2 <= MAX , 2xy <= MAX  浣唜^2+y^2涓嶄竴瀹?lt;= MAX
 2y^2<=MAX
 x^2<=MAX+y^2<=3MAX/2
 => x<=sqrt(3MAX/2) , y <= sqrt(MAX/2)
 鎵浠ユ灇涓緓,y澶嶆潅搴︿負(fù)O(MAX)
 (娉ㄦ剰x,y鏄?濂?鍋朵笖gcd(x,y) = 1)

 鍙傝僿atashi浠g爜鍐欑殑 
*/


CF60E
/*
 涓寮濮?n <= 10^6 涓?Mushroom 鎸夊崌搴忔帓鎴愪竴鏉$洿綰?錛?姣忎釜Mushroom閲嶄負(fù)a[i]
 涓嬩竴縐掓椂錛宎[i] , a[i+1] 涔嬮棿浼?xì)鍑虹庮C竴涓猘[i]+a[i+1]鐨凪ushroom
 鑰寈縐掓椂錛屾煇浜洪噸鏂版帓搴忚繖浜汳ushroom
 闂啀緇忚繃y縐掞紝鎵鏈塎ushroom鐨勯噸閲忎箣鍜?/p>

 0 a1  a2  a3
 1 a1  a1+a2  a2  a2+a3  a3
 2 a1  2a1+a2  a1+a2  a1+2a2  a2  2a2+a3  a2+a3  a2+2a3  a3
 3 ...
 璁炬椂闂磇鏃墮噸閲忎負(fù)Ti 鍒橳i = 3Ti-1 - (a1+an)
 鎵浠ュ墠x鍙敤鐭╅樀涔樻硶姹傚嚭Tx
 鐒跺悗鐢變簬sort錛屾渶澶х殑鍊兼槸Fx-1*an-1 + Fx*an 錛堟壘瑙勫緥 Fx-1*ai-1 + Fx*ai , Fx*ai-1 + Fx-1*ai錛?br> F鏄枑娉㈤偅濂戞暟鍒?nbsp; F[-1] = 0 , F[0] = 1
 鐒跺悗淇敼a1+an鍊煎嵆鍙紝鍐嶆鐭╅樀涔樻硶 綆楀嚭鍚庢潵鐨剏縐?br>*/


noip2002 G2 瀛椾覆鍙樻崲 鍙屽悜B(tài)FS
/*
 緇欏嚭A,B涓?br> 浠ュ強(qiáng)涓浜涘彉鍖栨柟娉曪紝鍗硏->y
 姹侫鍙樺埌B鐨勬渶鐭鏁?br> 
 bfs鎱㈢偣
 鍙屽悜浼?xì)蹇?br> 鐢變簬x->y鏄崟鍚戠殑錛屾墍浠ヤ袱杈圭殑緇撴瀯涓嶅悓錛?span style="BACKGROUND-COLOR: yellow">浼樺厛鎵╁睍闃熷垪闀垮害鐭殑浼樺寲灝辨湁鐢ㄤ簡(jiǎn)
 娉ㄦ剰鍙嶅悜B(tài)FS鏃舵墿灞曠殑欏哄簭鏄痽->x
*/

poj 2411
/*
 闂畁*m鐨勬鐩樻斁緗?*2鐨勯鐗岀殑鏂規(guī)鏁?br> n,m<=11
 
 鏋氫婦琛岋紝閫掓帹璁$畻鍒?br> dp[row,col,s]  row琛屼箣鍓嶅凡緇忔斁濂?涓斿綋鍓峳ow琛屽浜巗鐘舵?
 閫掓帹 閫氳繃鍦╮ow琛岋紝col鍒椾箣鍚庢斁緗紝鎵╁睍璁$畻
 dp[row,col,s1] += dp[row-1,col,s2]

 涓嶆槸璁板繂鍖栨悳绱?鏄粠0閫掓帹
 涓轟簡(jiǎn)鎵撹〃錛屽湪姣忎釜鍒嗘敮閮借綆椾簡(jiǎn)  鍗?dp[row][col][s1] += dp[row-1][col][s2];
 鍚﹀垯錛屽彲浠ュ湪鏈鍚庣殑鏃跺欐墠璁$畻鐨?br>*/

sgu 131
/*
 n*m媯嬬洏錛岄棶鐢?*2, 2*2鍘繪帀涓涓鐨勯鐗岃鐩栧畬鐨勬柟妗堟暟
 
 鐘舵佸畾涔変負(fù) dp[row,s]琛ㄧず褰撳墠絎瑀ow琛岀姸鎬佷負(fù)s錛屼笖鍓峳ow-1琛屽凡緇忚鐩栧畬鐨勬柟妗堟暟
 鍒?dp[row,s] <-- dp[row-1,s']
 杞Щ鏄灇涓緍ow榪欎竴琛屾瘡涓綅緗紙娉ㄦ剰鏄暣琛岋級(jí)鎬庝箞鏀?br> 鍚屾椂錛岃嫢鏋氫婦浜?jiǎn)row鎬庝箞鏀撅紝鍒欑敱鐘舵佺殑瀹氫箟錛宺ow-1涔嬪墠鐨勫繀欏昏鐩栧畬錛屽氨鐭ラ亾浜?jiǎn)s'鏄粈涔堜簡(jiǎn)錛侊紒錛?br> 
 姣忎釜浣嶇疆鏈?縐嶆斁娉曪紝闄や簡(jiǎn)琚箣鍓嶇殑鏂規(guī)硶闄愬埗浜?jiǎn)锛尀兏嵀?br>*/


hdu 2640
/*
 n*m鐨勬鐩橈紝鏈変竴浜涗綅緗笉鑳芥斁錛岄棶鏈澶氳兘鏀懼灝戜釜鍗佸瓧鏋?br>    @
 @@@
    @

 娉ㄦ剰鐨勬槸錛屾瘡涓狜閮介渶瑕佹斁錛屾墍浠ユ鐩樼浉搴旂殑浣嶇疆闇瑕佹槸絀虹殑
*/


xmu 1118
/*
 姹傜敤1*1,1*2,1*3鐨勭爾鍧楅摵婊?3*N鐨勬澘鐨勬柟妗堟暟鐩?br> 1*3錛屾渶澶氬獎(jiǎng)鍝?琛?鎵浠ョ姸鎬侀渶瑕佽褰曞綋鍓嶈浠ュ強(qiáng)鍓嶄竴琛岀殑鎯呭喌  2bit 鍏?縐?br> _    *    _    *
 _    _    *    *
 _琛ㄧず絀猴紝*琛ㄧず琚鐩?/p>

 dp[row,s]琛ㄧずrow-1涔嬪墠鐨勫凡緇忚鐩栧畬浜?jiǎn)锛宺ow-1,row鐨勭姸鎬佷負(fù)s鏃剁殑鍊?br> 
 瀵箁ow榪欎竴琛岀殑姣忎釜浣嶇疆錛屾灇涓懼叾鏀劇殑鏂規(guī)硶
 铏界劧璇?縐嶇姸鎬侊紝瀹為檯涓婅漿縐繪椂寰堝鏄笉闇瑕佺殑銆傚洜涓轟負(fù)浜?jiǎn)婊…懗row-1涔嬪墠鐨勬槸瑕嗙洊瀹岀殑

涓嶆斁錛屽彲浠ヨ漿縐諱袱縐嶏紝鍗充笂闈㈢殑1,2縐嶇被鍨?/span>
*/



hdu 2240
/*
 緇欏嚭濡傚浘n*5媯嬬洏錛屽叾涓涓鍧楁渶澶氬彧鑳界敤c涓紝鍏朵綑鐨勪笉闄?br> 闂兘鍚﹂摵婊?br> 璺焥gu 131綾諱技
 涓嶈繃榪欓噷dp鐨勫兼槸璁板綍鏈灝戜嬌鐢ㄧ殑1
 b1,b2鏄箣鍓嶇殑鏂規(guī)硶瀵瑰綋鍓嶇殑褰卞搷
*/



hdu 2606
/*
 鐢?*1, 2*2, 3*3, 4*4瑕嗙洊瀹孨*4鐨勬鐩樼殑鏂規(guī)鎬繪暟
 閫掓帹
 dp[n] =  dp[n-1]         鏈搴曢儴鏀?涓?*1
           + 4*dp[n-2]     鏈搴曢儴緇勫悎鍑?*4鐨勶紝鎬誨叡鏈?縐?br>           + 4*dp[n-3]     鏈搴曢儴緇勫悎鍑?*4鐨勶紝鎬誨叡鏈?縐?nbsp; 2涓槸2鍧?*2涓婁笅浜ら敊 2涓槸涓鍧?*3
           + 3*dp[n-4]     鏈搴曢儴緇勫悎鍑?*4鐨勶紝鎬誨叡鏈?縐?nbsp; 2涓槸3鍧?*2涓婁笅浜ら敊 1涓槸涓鍧?*4
    + 2*(dp[n-5]+dp[n-6]...+dp[0])    鐢?*2涓婁笅浜ら敊鏀劇殑
 鍒檇p[n-1] = ....
 涓ゅ紡鐩稿噺錛屽緱鍒癲p[n] = 2dp[n-1] +3dp[n-2] - dp[n-4] - dp[n-5]    n>=5
 鑷充簬n<=4鐨勶紝緇撳悎涓婇潰鐨刣p[n]鐨勫紡瀛愯綆?/p>

 鑴戞畫(huà)浜?jiǎn)锛寃a浜?jiǎn)濂藉嚑娆?br> 娌℃兂鍒板彲浠?span style="BACKGROUND-COLOR: yellow">2*2涓婁笅浜ら敊  鑴戞畫(huà)
*/



hnu 10816 ugly number
/*
 棰樻剰錛氱粰鍑簄涓礌鏁?lt;=10000  n<=10
 闂甗x,y]鍖洪棿鍐呭彧鍖呭惈榪欎簺绱犳暟鍥犲瓙鐨勬暟錛岃姹傚叏閮ㄦ墦鍗板嚭鏉?br> x,y<=2^31
 涓寮濮嬬湅鍒拌妯″悡浜?jiǎn)涓璺?br> 浜嬪疄涓婏紝鍙惈鏈夎繖浜涘洜瀛愮殑鏁版槸寰堝皯鐨?br> 娉ㄦ剰涓嶆槸鍊嶆暟錛侊紒涔嬪墠絎竴鍗拌薄鐪嬫垚鍊嶆暟錛屾悶涓鏂ヤ簡(jiǎn)錛岀畻浜?jiǎn)涓?鍜?鐨勶紝鏁版嵁宸ㄥぇ....
 
 鍍弍oj 鐨?ugly number閭f牱瀛愬仛
 鐢變簬姣忎釜鏁伴兘寰椾箻?shù)互杩欎簺绱犳暟鏉ユ墿灞?br> 鐢╪um[]鏁扮粍瀛樺偍鐢熸垚鐨勬墍鏈夋暟
 pos[i]琛ㄧず绱犳暟pr[i]褰撳墠瑕佷箻?shù)互num[pos[i]]
 鍒濆num[0] = 1  pos[i] = 0
 鐒跺悗姣忎竴姝ユ墿灞曚竴涓暟錛岃鏁頒負(fù)num[tot] = min(num[pos[i]]*pr[i])
 鐒跺悗鍒ゆ柇姣忎釜num[pos[i]]*pr[i] 鏄惁 = num[tot]錛?span style="BACKGROUND-COLOR: yellow">鏄殑璇?pos[i]+1
 
 榪欑鎬濇兂榪樻槸娌¤兘寰堝ソ鎺屾彙...
 鑲畾鐨勬槸錛屾瘡涓暟閮藉緱涔樹(shù)互pr[1],pr[2]...
 瑕佺敤pos[i]璁板綍褰撳墠pr[i]涔樺埌鍝釜鏁頒簡(jiǎn)錛侊紒錛?br>*/



08 ZhuHai Contest  E Magic Squares 鍙屽悜bf
/*
 闂竴涓帓鍒楀彉?shù)?*3騫繪柟鐨勬渶灝忔鏁?br> 姣忎竴姝ュ彲浠ラ夋嫨涓涓榪涜鏃嬭漿
 
 鐘舵佹暟涓嶅9!
 鍏堝叏鎺掑垪寰楀埌鐩爣鐘舵?br> 鍐嶅弻鍚慴fs  鎸哄揩鐨?br> 鐢ㄥ悍鎵樺睍寮錛堝彉榪涘埗錛夊垽閲嶆洿蹇?br>*/


poj 3255 鏃犲悜鍥懼兼鐭礬 鈽呪槄鈽?br>/*
 緇欏嚭涓涓棤鍚戝浘 n<=5000, m <= 30000
 姹?鍒皀鐨勫兼鐭殑璺紝濡傛灉鏈夊鏉℃渶鐭礬錛屼絾嬈$煭鐨勮繕鏄渶瑕佸ぇ浜庢渶鐭殑
 鍏佽鐐廣佽竟璧板嬈?/p>

 闈犺В棰樻姤鍛婁繚鍏粇~~ T_T
 姹?鍒板叾浠栫偣鐨勬渶鐭礬dist[] 錛屽啀姹俷鍒板叾浠栫偣鐨勬渶鐭礬rdist[]
 鏋氫婦姣忔潯杈癸紝鎵懼埌嬈$煭鐨?dist[u] + (u,v) + rdist[v]

 鍚ず:  鏋氫婦鍝潯杈逛綔涓轟腑闂寸殑蹇呴』緇忚繃鐨勮竟u->v錛岀劧鍚庤繛鎺?->u, v->n
*/


scu 3904
/*
 涓涓簭鍒梥eq[i]   n<=10^5                -10000<=seq[i]<=10000
 灝嗗叾鍒掑垎鎴愬嚑閮ㄥ垎錛屼嬌寰楁瘡涓閮ㄥ垎涔嬪拰>=0
 姹傛墍鏈夌殑鍒掑垎鏂規(guī)硶鏁?br> 鏄劇劧dp[i] = 鈭慸p[j]   (sum[i] - sum[j] >= 0)
 O(n^2)浼?xì)瓒呮?br> 鐢ㄧ嚎孌墊爲(wèi)鍔犻?br> 鎴戜竴寮濮嬫槸浠ヤ笅鏍囦綔涓虹嚎孌墊爲(wèi)鐨勬暟杞達(dá)紝璁板綍璇ユMin[p],Max[p],榪樻湁涓涓猻Dp[p]璁板綍璇ユ鎵鏈塪p鍊?br> 浣嗚繖鏍鋒瘮杈冩參錛岀淮鎶ょ浉瀵瑰浜?jiǎn)鐐?/p>

 鐪嬩簡(jiǎn)鏍囩▼錛屾槸鍏堣綆楁墍鏈夌殑sum[]錛岀劧鍚庣鏁e寲
 浠um鍊間綔涓烘暟杞存潵鎼烇紝鐢ㄦ爲(wèi)鐘舵暟緇勫氨寰堝鏄撳啓浜?/p>

*/


涓ぇ絎笁鏈?ch2 璐熸潈鏁?br>/*
 騫蟲(chóng)椂 N = anR^n + ... + a0R^0  鍏朵腑R>0
 璐熸潈鏁版槸R < 0,浣跨敤璐熸潈鏁拌〃紺虹殑浼樼偣鏄浜庤礋鏁幫紝涓嶇敤鍓嶇疆鐨勭鍙?br> 姣斿 -15 = 1*(-2)^5 + 1*(-2)^4 + 0*(-2)^3 + 0*(-2)^2 + 0*(-2)^1 + 1*(-2)^0
 鐜扮粰鍑篘,  -16<= R <=-2
 姹侼鐨勮礋鏉冩暟R琛ㄧず錛堥鐩殑絳旀杈撳嚭涓琛岋紝琛ㄦ槑琛ㄧず鏄敮涓鐨勶級(jí)
 (鏃犺姝f潈銆佽礋鏉冿紝緋繪暟ai閮芥槸 0<=ai<|R|)
 
 鍥犱負(fù)鍙栦綑榪愮畻鍙嬌鐢ㄨ姝f暣鏁伴櫎娉曪紝鎵浠ヤ笉鑳介氳繃榪炵畫(huà)榪為櫎姹備綑鐨勬柟娉曪紒錛侊紒錛?br> 鍐欐垚鏅氬艦寮忔椂錛?/p>

 N >= 0
 N = an|R|^n + ... + a0|R|^0 R < 0
 i涓哄鏁版椂:
  ai|R|i = R(i+1) + (|R|-ai)Ri          涓轟簡(jiǎn)淇濊瘉a'>=0
 i涓哄伓鏁?br>  ai|R|i = aiRi
 鎵浠ュ厛灝哊鍐欐垚姝f潈褰㈠紡錛岀劧鍚庡啀淇敼涓鴻礋鏉冪殑

 鍚岀悊
 N < 0
 N = -(an|R|^n + ... + a0|R|^0) R < 0
 i涓哄鏁版椂:
   -ai|R|i = aiRi         涓轟簡(jiǎn)淇濊瘉a'>=0
 i涓哄伓鏁?br>  -ai|R|i = R(i+1) + (|R|-ai)Ri

 鏈鍚庡a'[]榪涜淇錛屼嬌寰? <= a'i < |R|


 鎰熻鎸轟笉閿欑殑涓閬撻錛?span style="BACKGROUND-COLOR: yellow">閫氳繃瀵規(guī)鏉冪殑褰㈠紡錛屼慨姝d負(fù)璐熸潈鐨?/span>
*/



_Yuan 2011-01-05 20:12 鍙戣〃璇勮
]]>鍋氶璁板綍...http://www.shnenglu.com/Yuan/archive/2010/08/09/122760.html_Yuan_YuanMon, 09 Aug 2010 04:28:00 GMThttp://www.shnenglu.com/Yuan/archive/2010/08/09/122760.htmlhttp://www.shnenglu.com/Yuan/comments/122760.htmlhttp://www.shnenglu.com/Yuan/archive/2010/08/09/122760.html#Feedback2http://www.shnenglu.com/Yuan/comments/commentRss/122760.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/122760.html

8.9


POJ 3189 鏋氫婦 澶氶噸鍖歸厤
/*
 棰樻剰錛歂澶碿ow錛孊涓猙arn 姣忎釜barn鏈夊閲廲i錛岀粰鍑烘瘡澶碿ow瀵硅繖浜沚arn鍠滅埍紼嬪害鎺掑簭鐨勫垪琛?br> 闂浣曞畨鎺掞紝浣挎墍鏈夌殑鐗涗箣闂寸殑婊℃剰搴︾殑鏈澶у樊鏈灝?br> 棰樻剰姣旇緝緇曞彛
 璁炬渶婊℃剰紼嬪害涓簎錛屾渶涓嶆弧鎰忕▼搴︿負(fù)v  鍒欑瓟妗堝氨鏄痷-v浜?br> 鍙互鐩存帴O(B^2)鏋氫婦[v,u]
 鏇村揩鐨勫仛娉曟槸錛?span style="BACKGROUND-COLOR: yellow">濡傛灉[v,u]鍙錛屽垯[v,u+k]鑲畾鍙錛?br> 鏍規(guī)嵁榪欎釜錛岀敤涓や釜鎸囬拡錛屽鏋滃彲琛岋紝left++錛涗笉琛宺ight++
 鐒跺悗鐢ㄥ寛鐗欏埄澶氶噸鍖歸厤鍋氬嵆鍙?br> 榪欑鐢?span style="BACKGROUND-COLOR: yellow">涓や釜鎸囬拡鏋氫婦鐨勬柟娉曟湁閫氱敤鎬?br>*/



URAL 1699 鈽呪槄鈽?寤虹珛LCA 緇嗚妭澶勭悊濂?/font>
/*
 棰樻剰錛氱粰鍑轟竴涓湴鍥撅紝涓浜涘湴鏂瑰彲浠ヨ蛋
 The ground is constructed in such a way that there is  exactly one way to get from one passable cell to another passable cell without visiting any cell twice.
 琛ㄦ槑鏄竴媯墊爲(wèi)
 鐒跺悗緇欏嚭Q涓闂紝闂產(chǎn)鍒癰鐨勬渶灝戣漿鐨勬鏁?br> 浠?#'寤轟竴媯墊爲(wèi)錛岄澶勭悊LCA
 鐒跺悗璇誨叆鏌ヨ錛屾壘鍒癓CA  鍐嶅垎鎯呭喌璁ㄨ涓涓媍ost[]鍗沖彲
 if LCA(a,b)=a  da=0
 else 鑰冭檻LCA(a,b)鍚戜笂鏈夋病杞?鏈夌殑璇漝a=dist[a]-dist[LCA(a,b)]-1 瑕?1

 R*C<=100000  閫掑綊浼?xì)鐖?br> 瑕佺敤闈為掑綊...
*/
http://www.shnenglu.com/Yuan/archive/2010/08/09/122849.html



POJ 1149 鏋勫浘涓嶉敊
/*
 棰樻剰: 緇欏嚭m涓尓鍦堬紝n涓【瀹€傛瘡涓【瀹㈡湁涓浜涢挜鍖欏紑鐚湀鐨勶紝寮浜?jiǎn)鍚庨偅浜涚尓鍙噸鏂板垎閰嶄篃琛?br>    欏懼瑕佷拱Bi澶寸尓  欏懼璧板悗闂ㄥ氨鍏充簡(jiǎn)灝變笉鑳藉啀璋冩暣鐚簡(jiǎn)  
    鐚湀涓寮濮嬫湁涓浜涚尓錛岀尓鍦堝彲瀹圭撼鏃犻檺鐨勭尓
    闂兘鍗栧嚭鍘葷殑鏈澶х尓鐨勬暟鐩?/p>

 榪欓亾棰橈紝鎴戜竴寮濮嬪仛錛屾瀯鍥炬槸姝g‘錛屼竴涓皬鍦版柟鍐欓敊浜?jiǎn)锛屾悶浜?jiǎn)鎴戝崐澶╀簡(jiǎn)錛?br> 鏋勫浘濡備笅錛?br> S鍚戠尓鍦堣繛杈癸紝瀹歸噺涓虹尓鍦堢尓鐨勬暟鐩?br> 欏懼鍚慣榪炶竟錛屽閲忎負(fù)欏懼瑕佷拱鐨勬暟鐩?br> 欏懼鐨勯挜鍖欏搴旂殑鐚湀鍚戦【瀹㈣繛杈癸紝瀹歸噺鏃犻檺
 濡傛灉欏懼i璺熷墠闈㈢殑欏懼j鏈夊叡鍚岀殑閽ュ寵灝辮兘榪瀓->i錛屽閲忔棤闄?br> 
 鎴戣繖鏍峰瓙鏋勫浘璺熺綉涓婄殑鏈夌偣涓嶄竴鏍鳳紝涓嶈繃鏍稿績(jī)閮芥槸宸笉澶氬惂 
 “鑻ョi涓漢涓庝粬鍚庨潰鐨勭j涓漢鏈夊悓涓涓尓鍦堢殑閽ュ寵錛屽垯浠巌寮曡竟鍒癹,瀹歸噺涓烘棤絀峰ぇ”


 緗戜笂璇︾粏鏋勫浘錛?a >http://imlazy.ycool.com/post.2059102.html
 浠栬繖縐嶆瀯鍥炬柟娉曟洿宸э紝鍘繪帀浜?jiǎn)鐚湀浜?jiǎn)錛堢尓鍦堟暟鐩緝澶э級(jí)  涓嶈繃瀵規(guī)垜灝遍毦鎯沖埌
*/


hdu 2888
浜岀淮RMQ  鐢╠p[i][j][k1][k2]琛ㄧず鐭╁艦(i,j)  (i+(1<<k1)-1,j+(1<<k2)-1)鐨勬渶鍊?br>




8.10


hdu 3485 
姹傞暱搴︿負(fù)n鐨勪笉鍖呭惈101瀛愪覆涓茬殑涓暟  璺焗du 2604綾諱技
鏈懡鍚?jpg
濡傚浘錛岄暱搴︿負(fù)n鐨勫悎娉曚覆錛屽悗緙鍙互鏄?錛?01,0011,00111,...
鎵浠p[n]=dp[n-1]+dp[n-3]+dp[n-4]+...+dp[1]
鑰宒p[n-1]=dp[n-2]+dp[n-4]+...+dp[1]
涓ゅ紡鐩稿噺錛屽緱鍒癲p[n]=2*dp[n-1]-dp[n-2]+dp[n-3]




hdu 3486
/*
 棰樻剰錛氱粰鍑簄涓暟錛屾眰鍒嗘垚澶氬皯孌碉紝浣垮緱姣忔鐨勬渶澶у間箣鍜?gt;k 錛堟湯灝句笉瓚充竴孌電殑涓㈠純錛?br> 浜屽垎鍒嗘垚澶氬皯孌碉紝鐩存帴鍋氬嵆鍙?O(nlogn)
 鐢ㄧ嚎孌墊爲(wèi)浼?xì)鏇存參锛孫(nlognlogn)
*/


hdu 3482
/*
 棰樻剰:闂弧瓚蟲(chóng)潯浠剁殑闀垮害涓簄鐨勪覆鐨勪釜鏁?nbsp; 鏉′歡鏄瘡涓暱搴︿負(fù)m鐨勫瓙涓茬殑鏁板瓧瑕佷箞鍏ㄤ笉鍚屻佽涔堝叏鐩稿悓
 鍒嗙被璁ㄨ
 m=1  1
 m=2  2^n
 m>n (涓嶅瓨鍦ㄩ暱搴︿負(fù)m鐨勫瓙涓?   m^n
 m<=n  m!+m (鍏跺疄錛岀‘瀹氫簡(jiǎn)鍓峬涓悗闈㈢殑閮戒細(xì)紜畾鐨勶紝鎵浠!  鍐嶅姞涓婂叏鐩稿悓)
*/



hdu 3478
/*
 棰樻剰錛氱粰鍑轟竴涓棤鍚戝浘錛屼竴涓搗鐐癸紝闂槸鍚﹀湪鏌愪釜鏃跺欙紝榪欎釜浜烘湁鍙兘鍦ㄦ墍鏈夌偣閮藉彲浠ュ嚭鐜?br>     浜轟笉鑳藉仠鐣欏湪鍘熷湴
 鐢諱竴涓嬪浘灝辯煡閬擄紝鍙瀛樺湪濂囧湀錛岄偅涔堝鍦堢殑鐐瑰氨鍙互浠諱綍鏃跺埢閮藉嚭鐜頒漢
 鍚屾椂錛屽浜庡鍦堝鐨勶紝濂囧湀鍙互婧愭簮涓嶆柇鍦頒紶鍒板鍦堝
 榪欐牱鑲畾瀛樺湪鏌愪釜鏃跺埢錛屽叾浠栫偣涔熷彲浠ュ悓鏃跺嚭鐜頒漢錛堝洜涓烘簮婧愪笉鏂紶鍑烘潵錛屾墍浠ヨ偗瀹氫細(xì)娉㈠強(qiáng)鎵鏈夛級(jí)
*/
http://www.shnenglu.com/Yuan/archive/2010/08/11/123005.html




8.11

hdu 3516
/*
 棰樻剰:緇欏嚭n涓偣錛屽鏋滄弧瓚?xi < xj and yi > yj for all i < j  灝卞彲浠ュ湪鐐?xi,yj)鍚戠偣i,j榪炶竟
 姹傛妸浠栦滑榪炴垚涓媯墊爲(wèi)鐨勬渶灝忎唬浠?br> 璺熺煩闃佃繛涔樼殑鍔犳嫭鍙蜂竴鏍?br> dp[i][j]=min{dp[i][k]+dp[k+1][j]+(pt[k+1].x-pt[i].x)+(pt[k].y-pt[j].y)}
 n<1000
 闇瑕佸洓杈瑰艦涓嶇瓑寮?nbsp; O(n^2)
*/


hdu 3512
/*
    棰樻剰錛氱粰鍑轟笂闈涓暟錛屼笅闈涓暟錛屾眰瀹岀編鍖歸厤鐨勬渶澶ц竟鏈灝忋傝竟鏉冨畾涔変負(fù)涓や釜鏁扮浉涔樸傚彲浠ヨ礋鏁?br>    搴旇鏈夌偣YY鐨?br>    鍏堝垎涓涓嬫儏鍐?br>    鍚屽彿錛氬ぇ*灝?nbsp; 鎵嶈兘浣挎渶澶ч偅涓渶灝?br>    寮傚彿錛氬皬*灝?nbsp; 鎵嶈兘浣挎渶澶ч偅涓渶灝?br>    涓鐐硅椽蹇?jī)鐨勬濇兂
    涓婇潰鐨勯偅浜涙鏁拌窡涓嬮潰鐨勮礋鏁板尮閰?br>    涓婇潰鐨勯偅浜涜礋鏁拌窡涓嬮潰鐨勬鏁板尮閰?br>    榪欐牱鍓╀笅鏉ョ殑錛堝綋鐒跺彲浠ユ病鏈夊墿涓嬶級(jí)錛岃偗瀹氭槸鍚屽彿鐨勶紝鑰屼笖榪欎簺鏁版洿鎺ヨ繎浜?

    鐜板湪鍐嶆潵鐪嬮偅浜?姝f暟*璐熸暟 鐨勬儏鍐?br>    鍒氭墠鎻愬埌“灝?灝?nbsp; 鎵嶈兘浣挎渶澶ч偅涓渶灝?#8221;錛岃屼笖瓚婂皬鐨勮瘽瓚婂ソ
    鎵浠ヤ笂闈㈤偅浜涙渶澶х殑姝f暟璺熶笅闈㈤偅浜涙渶灝忕殑璐熸暟鍖歸厤錛堥『搴忓尮閰嶏紝澶?澶э紝灝?灝忥級(jí)
    鍚岀悊錛屼笂闈㈢殑閭d簺鏈灝忕殑璐熸暟璺熶笅闈㈤偅浜涙渶澶х殑姝f暟鍖歸厤

    灝辮繖鏍峰厛鎺掑簭錛岀劧鍚庢壘鍑哄悇鑷殑0鐨勪綅緗?br>    鍐嶅垎綾諱竴涓嬪嵆鍙?br>*/
http://www.shnenglu.com/Yuan/archive/2010/08/11/123105.html





8.12

hdu 3481

/*
 棰樻剰錛氶棶闀垮害涓簄鐨刡ad serial涓茬殑涓暟銆俠ad serial 鎸囨瘡涓涓暱搴︿負(fù)m鐨勫瓙涓查兘涓嶆槸good serial
 (good serial鎸囪涔堝叏鐩稿悓錛岃涔堝叏涓嶅悓)錛屾墍浠ad serial灝辨槸涓や釜浠ヤ笂涓嶅悓錛屼絾涓嶈兘m涓兘涓嶅悓

 dp[i,j](1<=j<m)琛ㄧず闀垮害涓篿鐨勪覆鏈鍚巎涓暟瀛椾簰涓嶇浉鍚岀殑涓蹭釜鏁幫紙鍗硈tr[i-j]涓庢湯灝捐繖j涓暟涓竴涓浉鍚岋級(jí)

 鑰冭檻dp[i+1,j+1]
 (1)dp[i+1,j+1]+=dp[i,j]*(m-j)   閫変竴涓笌i鍙?qiáng)涔嬪墠j涓暟瀛楅兘涓嶅悓鐨?br> (2)dp[i+1,k]+=dp[i,j]  2<=k<=j  閫変竴涓笌i涔嬪墠j涓暟瀛楁煇涓浉鍚岀殑 str[i+1]=str[i+1-k]
 榪樻湁涓縐嶇壒孌婄殑灝辨槸dp[i,1]錛屽嵆鏈熬鍑犱釜鏁板瓧閮界浉鍚岀殑鍚堟硶涓蹭釜鏁?br> (3)dp[i+k,1]+=dp[i,j]  (1+k<=m-1, j>1||i==1)
 濡傛灉j=1鐨勮瘽鏈夊彲鑳戒竴榪炰覆閮界浉鍚屽鑷翠笉鍚堟硶錛岃j>1
 鐗規(guī)畩鐨勬槸i=1錛宩=1灝卞彲鍙栵紝鍥犱負(fù)1涔嬪墠娌℃湁鏁板瓧錛岃涓轟笌1涓嶅悓錛堣窡j>1涓鏍鳳級(jí)


 蹇?jī)寰楀Q氬彧鑰冭檻鏈鍚庝竴涓瓧絎︼紙絎琲+1錛夛紝鑰冭檻鎬庝箞鍚堟硶榪囨潵鐨?br>     dp杞Щ鏃訛紝鐢變箣鍓嶇殑杞Щ榪囨潵闅懼啓鐨勮瘽錛屽啓鎴愪粠褰撳墠鎵╁睍鍒頒箣鍚庣殑錛?br>     鎸夌収棰樻剰瀹氫箟鐘舵侊紝榪欓噷瑕?涓互涓婁笉鍚岋紝瀹氫箟鏈熬鏈塲涓笉鍚岋紙j=1鏃舵槸鐗規(guī)畩鎯呭喌錛屽嵆鏈熬鍙互鍑犱釜榪炵畫(huà)鐩稿悓錛?br>*/


hdu 3510
/*
 棰樻剰錛氱粰鍑簄涓換鍔★紝m鍙版満鍣?nbsp; 浠誨姟闂存湁渚濊禆鍏崇郴錛岃繖浜涘叧緋繪瀯鎴愪竴媯墊爲(wèi)  闂渶鐭畬鎴愭椂闂?br> 鏄劇劧瀹屾垚鏃墮棿涓嶈兘灝戜簬鏈娣辯殑娣卞害錛岃屾瘡嬈″彧鑳介夊彾瀛愯鏈哄櫒鍔犲伐
 榪欐牱錛屾瘡嬈¢夋繁搴︽渶娣辯殑鍙跺瓙鍔犲伐錛堢敤PQ錛夌洿鍒板畬鎴?br> 濡傛灉涓嶉夋繁搴︽渶娣辯殑錛屽彲鑳戒細(xì)浣挎椂闂村彉闀?br>*/



hdu 3508
/*
 棰樻剰錛氶棶n鍐咃紝涓巒浜掕川鐨勬墍鏈夋暟鐨勪箻縐ān鏄灝?br> 鎵撲簡(jiǎn)涓浜涙暟鎹紝鍙戠幇鍙湁1鍜宯-1
 褰搉=1,2,4,p^k,2*p^k鏃?nbsp; 絳旀涓簄-1
*/


hdu 3483
/*
 棰樻剰錛氱粰鍑篘,x,M 瑕佽綆?br> N
 鈭?k^x)*(x^k) MOD M
 k=1
        x  
 鐢ㄥ埌浜岄」寮忓畾鐞嗭紝(n+1)^x = 鈭慍(x,k)n^k  
        k=0
 鐒跺悗鏋勯犵煩闃碉紝姹傚拰  S(n)琛ㄧず鍓峮欏瑰拰
http://www.shnenglu.com/Yuan/archive/2010/08/13/123268.html
*/


hdu 3366
/*
 濡傛灉宸茬粡鐭ラ亾璧拌繖浜沺assage鐨勯『搴忕殑璇濓紝搴旇鍙互dp鍑烘潵鐨?br> 浣嗘槸榪欓噷涓嶇‘瀹氶『搴忥紝瑕侀夋嫨鏈浼橈紝鍙互鎸夌収P/Q浠庡ぇ鍒板皬鎺掑簭
 閬囧埌鍖緬鍑犵巼Q瓚婂皬錛屽嚭鍘誨嚑鐜嘝瓚婂ぇ錛岃偗瀹氭槸鎴戜滑浼樺厛鑰冭檻鐨勶紒
 Help Bill to find out the probability that he can escape from this castle if he chose the optimal strategy.

 dp[i][j]琛ㄧず鐜板湪鏈夐挶j錛屽湪i涓猵assage澶勶紝鏈鍚庤兘澶熷嚭鍘葷殑姒傜巼
 dp[n-1,j]=P[n-1]
 dp[i,j]=P[i]+Q[i]*dp[i+1,j-1]+(1-P[i]-Q[i])*dp[i+1,j]   j>0
 dp[i,j]=P[i]+(1-P[i]-Q[i])*dp[i+1,j]   j=0

 姒傜巼棰樻湡鏈涢錛屼竴鑸兘鏄〃紺虹幇鍦ㄧ鐩爣鐨勫?br> 錛堝洜涓哄綋鍓嶆帴涓嬫潵鐨勬柟妗堢‘瀹氫簡(jiǎn)錛屾鐜囦篃鐭ラ亾浜?jiǎn)锛岃屽綋鍓嶄粠鍓嶉潰榪囨潵灝變笉紜畾姒傜巼浜?jiǎn)锛屽叾姒傜巼璺熻矾寰勬湁鍏冲Q?br>*/




8.13

zoj 2597
/*
 棰樻剰錛氶鐩畾涔変竴縐峮浣嶇殑yellow code  鐩擱偦涓や釜鏁頒箣闂磋宸埆鑷沖皯[n/2]銆傝浣犳瀯閫犲嚭n浣嶇殑yellow code
 瑙傚療鍙戠幇錛宯浣嶅彲浠ョ敱n-1浣嶅鍒朵竴閬嶏紝鐒跺悗鏈鍚庝竴鍒楀啀綆椾竴涓嬪緱鏉?br> 瀵規(guī)渶鍚庝竴鍒楃殑鍓峮涓垎鎼滃嵆鍙紝鍚巒涓槸鍓峮涓彇鍙?br>*/

zoj 1619
/*
 棰樻剰錛歯涓漢n涓ぜ鐗╂販涔憋紝闂瘡浜哄彇涓涓紝鏈緇坢涓漢鍙栧埌鑷繁鐨勬鐜?br> 鐩存帴鐢ㄩ敊鎺掑叕寮忓嵆鍙?nbsp; C(n,m)*D[n-m]/n!
 鎴栬卍p
 dp[i,j]琛ㄧず鍓峣涓漢j涓彇寰楄嚜宸辯殑姒傜巼
 dp[i,j]鍙互鍏堝畨緗ソi-1鐨勶紝鐒跺悗鍐嶇敤涔樻硶鍘熺悊涔樿搗鏉?br> dp[i,j] = dp[i-1,j]*(i-1-j)/i    鍏堟妸i-1涓漢瀹夌疆鍑簀涓漢鍙栧埌鑷繁鐨勬儏鍐碉紝涓轟嬌榪樻槸j涓漢錛岀i涓漢闇璺熷墿涓嬬殑i-1-j涓漢鍏朵腑涓涓氦鎹?br>   + dp[i-1,j-1]*1/i       鍏堟妸i-1涓漢瀹夌疆鍑簀-1涓漢鍙栧埌鑷繁鐨勬儏鍐碉紝鐒跺悗絎琲涓漢鍙栧埌鑷繁鐨勬鐜?br>   + dp[i-1,j+1]*(j+1)/i  鍏堟妸i-1涓漢瀹夌疆鍑簀+1涓漢鍙栧埌鑷繁鐨勬儏鍐碉紝鐒跺悗絎琲涓漢璺熻繖j+1涓漢涔嬩竴浜ゆ崲

*/


8.14

zoj 2703 琚繖閬撻鍗′簡(jiǎn)濂戒箙錛岃繕鏄痺a

8.16
鍋氫簡(jiǎn)涓嬩幾灞曟爲(wèi)鐨?br>spoj 4487     1470


8.17

cii 2193
/*
 sample錛?br> ##-(##+###)
 3333333
 鐢ㄤ笅闈㈢殑鏁板瓧鍘誨~涓婇潰鐨?浣垮緱璇ュ紡瀛愭渶澶?nbsp; 鏈夊涓椂杈撳嚭瀛楀吀搴忔渶灝忕殑
 
 棣栧厛錛屽幓鎷彿
 娌℃湁鐪熺殑鍘繪帀錛屽埄鐢ㄦ嫭鍙峰墠鐨勯偅浜涙璐熷彿鏉ョ‘瀹氭瘡涓暟瀛楃湡瀹炵殑姝h礋鍙?br> 涓烘瘡涓暟瀛楁垨鑰呮嫭鍙瘋繖鏍風(fēng)殑鏁翠綋娣誨姞姝h礋鍙?br> 濡備笅闈㈢殑渚嬪瓙  +(-(+a+b)+c)
 榪欓噷鍦ㄦ渶澶栫殑鎷彿鍙?qiáng)a涔熻鏈変竴涓鍙?/p>

 涓轟簡(jiǎn)杞寲鍑轟笂闈㈢殑寮忓瓙鐢ㄤ竴涓爤
 1) '(' 濡傛灉鍏跺墠闈笉鏄鍙鳳紝灝遍渶瑕佹坊鍔犱竴涓鍙鳳紙璺熸爤欏朵竴鏍鳳級(jí) push(top)
 2) '(' pop
 3) '±' push(op^top)  榪欓噷鎶婅礋鍙峰綋鎴?
 4) '#' 濡傛灉鍏跺墠闈笉鏄鍙峰氨闇瑕佹坊鍔犱竴涓鍙鳳紙璺熸爤欏朵竴鏍鳳級(jí) push(top)
    鐒跺悗榪炶... 瀛樿搗榪欎釜鏁?nbsp; 鍐峱op
 
 姝f暟瀛樺湪positive 璐熸暟瀛樺湪negative

 鐜板湪灝辨潵璐績(jī)  鍏堝皢digit鎺掑簭
 瀵逛簬姝f暟錛屾瘡嬈″皢digit閲屾渶澶х殑鏁拌祴鍊肩粰positive閲岄暱搴︽渶澶х殑錛屾垨闀垮害鐩稿悓闈犲悗鐨?br> 瀵逛簬璐熸暟錛屾瘡嬈″皢digit閲屾渶灝忕殑鏁拌祴鍊肩粰negative閲岄暱搴︽渶澶х殑錛屾垨闀垮害鐩稿悓闈犲墠鐨?br> 
 鍙敤涓涓爢鏉ュ疄鐜幫紝鍙栧嚭鍚庡啀鏀捐繘鍘伙紙榪欐椂闀垮害灝?浜?jiǎn)锛?jí)

*/



_Yuan 2010-08-09 12:28 鍙戣〃璇勮
]]>
There is a tree 鏍?wèi)DP http://www.shnenglu.com/Yuan/archive/2010/08/05/122373.html_Yuan_YuanThu, 05 Aug 2010 15:26:00 GMThttp://www.shnenglu.com/Yuan/archive/2010/08/05/122373.htmlhttp://www.shnenglu.com/Yuan/comments/122373.htmlhttp://www.shnenglu.com/Yuan/archive/2010/08/05/122373.html#Feedback6http://www.shnenglu.com/Yuan/comments/commentRss/122373.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/122373.html
 

浠婂ぉ鎺掍綅璧涳紝浠ヤ笅鐨勮繖閬撴爲(wèi)DP鎯充簡(jiǎn)鎴戝ソ鍥э紒

涓寮濮嬩貢鎼為珮鏂秷鍏冦傛垜絎簩嬈″啓楂樻柉娑堝厓錛岃繕鏄嚜宸遍粯鐨勩傞唹~~

鐒跺悗鍙戠幇錛屼細(xì)鍑虹幇鑷敱鍏冿紝涓轟簡(jiǎn)姹傚緱鏈灝忓鹼紝涓嶅緱浜岃繘鍒舵灇涓句簡(jiǎn)錛熶絾n<=100錛屾垜涔辨悶浜?jiǎn)涓涓嬶紝緇欐垜WA,涓嶇粰鎴?span>TLE

閿欎簡(jiǎn)8銆?span>9嬈″惂錛熷績(jī)紕庯紝鍙ソ鐢ㄦ爲(wèi)dp鍋氥傦紙鑶滄嫓涓嬫灄mm縐掓潃瀹冦?span>...Orz錛?br>(鍚庢潵鐪嬩簡(jiǎn)涓嬫彁浜よ褰曪紝16:41榪樻槸鎻愪氦楂樻柉娑堝厓錛屽師鏉ユ垜浜や簡(jiǎn)10嬈¢珮鏂傘俧t)

 

姣忎釜鐐硅褰曚笁涓姸鎬侊細(xì)

A[u]  閫?span>u     u鍙?qiáng)鍏跺悗浠i兘浜?/span>

B[u]  涓嶉?span>u   u鍙?qiáng)鍏跺悗浠i兘浜?/span>

C[u]  涓嶉?span>u  u涓嶄寒錛屼絾鏄叾鍚庝唬閮戒寒

鏄劇劧鏈?span>A[u]=鈭?span>C[v]   v鏄?span>u鐨勫効瀛?/span>

B[u],C[u]姣旇緝闅炬眰涓鐐癸紝闇瑕佸涓嬈?span>dp

鍋囪u鏈?span>n涓効瀛?/span>

dp[i,j]琛ㄧずu鐨勫墠i涓効瀛愪腑鏈?span>j涓効瀛愭槸鎸変簡(jiǎn)寮鍏崇殑錛堝嵆A[v]錛夌殑鏈灝忓?/span>

dp[i,j] = min(dp[i-1,j]+B[v],dp[i-j,j-1]+A[v])

閭d箞

B[u]=min(dp[n,k]); k涓哄鏁?/span>

C[u]=min(dp[n,k]); k涓哄伓鏁?/span>

 

  涓涓暟鎹細(xì)
6
1 2
2 3
2 4
2 5
5 6
ans : 4


#include<cstdio>
#include
<cstring>
#include
<vector>
using namespace std;

const int MAXN = 100;

vector
<int>G[MAXN+10];

int A[MAXN+10],B[MAXN+10],C[MAXN+10];
int dp[MAXN+10][MAXN+10];

void treeDp(int u,int p)
{
    A[u]
=1;
    vector
<int>son;
    
for(int i=0,size=G[u].size();i<size;i++)
    
{
        
int v=G[u][i];
        
if(v==p)continue;
        treeDp(v,u);
        A[u]
+=C[v];
        son.push_back(v);
    }

    
int n=son.size();
    
//dp涓涓?nbsp;A[v]  B[v]
    dp[0][0]=0;
    
for(int i=1;i<=n;i++)
    
{
        
int v=son[i-1];
        dp[i][
0]=dp[i-1][0]+B[v];
        
for(int j=1;j<=i;j++)
        
{
            dp[i][j]
=MAXN;
            
if(i-1>=j)dp[i][j]=min(dp[i][j],dp[i-1][j]+B[v]);
            dp[i][j]
=min(dp[i][j],dp[i-1][j-1]+A[v]);
        }

    }

    B[u]
=C[u]=MAXN;
    
for(int k=0;k<=n;k++)
    
{
        
if(k&1)B[u]=min(B[u],dp[n][k]);
        
else C[u]=min(C[u],dp[n][k]);
    }

}

int main()
{
    
int n;
    
while(scanf("%d",&n),n)
    
{
        
for(int i=1;i<=n;i++)G[i].clear();
        
for(int i=1;i<n;i++)
        
{
            
int a,b;
            scanf(
"%d%d",&a,&b);
            G[a].push_back(b);
            G[b].push_back(a);
        }

        treeDp(
1,0);
        printf(
"%d\n",min(A[1],B[1]));
    }

    
return 0;
}





2011.3.13 浠婂ぉ榪樺嚭榪欓
鏁扮粍寮灝忎簡(jiǎn)錛寃a浜?br>n<=100 鎴戝紑101涔熶笉琛岋紵 T_T 

鐘舵佽〃紺轟負(fù)
dp[u,0] u鐖朵翰鏈寒錛寀鍙?qiáng)瀛愭爲(wèi)閮藉凡缁忕偣浜?br>dp[u,1] u鐖朵翰銆乽鏈寒錛屽瓙鏍?wèi)閮戒?br>dp[u,2] u鐖朵翰銆乽鍙?qiáng)瀛愭爲(wèi)閮戒寒浜?jiǎn)
杞Щ鏄細(xì)
dp[u,0] <- 濂囨暟涓猟p[v,2] + 鍓╀笅鐨刣p[v,0]    v鏄痷鐨勫効瀛?br>dp[u,1] <- 鍋舵暟涓猟p[v,2] + 鍓╀笅鐨刣p[v,0]
dp[u,2] <- 鑷韓鐐逛寒1嬈?+ 鎵鏈夐兘鏄痙p[v,1]
娉ㄦ剰鐨勬槸鏈変竴縐嶆濇兂錛?br>鏂規(guī)鐐圭伅鐨勯『搴忔槸鏃犲叧鐨勶紝鎵浠ュ湪鑰冭檻u鏃訛紝鍏跺瓙鏍?wèi)璇ョ偣鐨勯兘宸簿l忕偣浜紝u鏄渶鍚庣偣鐨?br>榪欐牱浼?xì)娓呮櫚寰堝锛尀兏嶄細(xì)鍐嶅幓鑰冭檻v鏄惁榪樼偣
鎵浠?span style="BACKGROUND-COLOR: yellow">瀹為檯鎯呭喌浠庡簳寰涓婄偣鐏?/span>銆?/p>


闄勶細(xì)
 

There is a tree

Time Limit:1000MS  Memory Limit:65535K

棰樺瀷: 緙栫▼棰?/span>   璇█: 鏃犻檺鍒?/span>

Description

Tree is a graphy without loop and direction when defined in the graphy theory realm. There is a tree with a light and a button at each node. If the button is presses, the state of light at this node will switch to the other state, meaning that it will trun from ON to OFF, or from OFF to ON. Besides, the state of light in the neighbour nodes will also switch from ON to OFF or OFF to ON.

 

At the beginning, all the lights are in the state OFF. It is your task to find out at least how many operations of switching should be performed in order to make all the light ON.

 

Input

There are mutiple of data sets in the file.

        At each case, the first line contains an integer n, indicating the number of Nodes in the tree. (n<=100)

        Then following n – 1 lines. Each line contains a pair number of x y, meaning that Node x and Node y is linked with an edge.

        The input file is terminated by a 0.

Output

For each case, output the minimal number of operations to light up all the lights.

Sample Input

3

1 2

1 3

0

Sample Output

1

 
鏁版嵁錛?in.txt  out.txt



_Yuan 2010-08-05 23:26 鍙戣〃璇勮
]]>
Spanning Tree PKKJ鍑虹殑涓閬撶敓鎴愭爲(wèi)璁℃暟棰?/title><link>http://www.shnenglu.com/Yuan/archive/2010/07/31/121815.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Sat, 31 Jul 2010 14:29:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2010/07/31/121815.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/121815.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2010/07/31/121815.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/121815.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/121815.html</trackback:ping><description><![CDATA[   浠婂ぉ08銆?9鐨勪釜浜烘帓浣嶈禌錛屽嚭浜?jiǎn)涓嬮潰杩欓亾锛屼竴寮濮嬬湅瑙夊緱寰堥毦錛屽悗鏉ユ帹鍑烘潵浜?jiǎn)鍚帪兏嶆槸寰堥毦浜?jiǎn)銆?br>   鍝堝搱錛屽彧鏈夋垜涓涓漢鍋氬嚭鏉ワ紝涓嬮潰璇翠笅鎬庝箞鍋氥?br><span style="FONT-FAMILY: 'Lucida Console'; FONT-SIZE: 11pt; mso-fareast-font-family: 瀹?huà)浣? mso-bidi-font-family: 'Times New Roman'; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA" lang=EN-US><v:shapetype id=_x0000_t75 coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"> 棰樼洰瀹氫箟涓縐嶅彨鍋歯<span>-circle five-angle 鐨勫浘錛岄棶鐢熸垚鏍?wèi)鐨勪釜鏁板Q屾瘡涓偣閮界畻涓涓笉鍚岀殑鐐? <div align=center src_cetemp="/images/cppblog_com/yuan/a.jpg"><img border=0 alt="" src="http://www.shnenglu.com/images/cppblog_com/yuan/a.jpg" width=238 height=225></div> <br>  <p align=center><span>Illustration 1: 4-circle five-angle graph</span></p>    棣栧厛錛屼腑闂寸殑鐜偗瀹氳鍘繪帀涓浜涳紝浣嗘槸鍘繪帀澶氬皯鏉°佸摢鍑犳潯鍛紵<br>   鍙互鏋氫婦鎯呭喌銆傚氨鎷挎牱渚嬭錛屾垜浠幓鎺変換鎰忕殑涓ゆ潯錛屽緱鍒頒笅鍥撅細(xì)<br> <div align=center src_cetemp="/images/cppblog_com/yuan/aa.jpg"><img border=0 alt="" src="http://www.shnenglu.com/images/cppblog_com/yuan/aa.jpg" width=236 height=225></div> <br>   綰㈣壊鐨勮竟琛ㄧず鍘繪帀鐨勩?br>   1錛夊浜庨潪綰㈣壊杈圭粍鎴愮殑鐜紝4鏉¤竟浠繪剰涓鏉¢兘鑳藉垹闄わ紝鍗?<sup>n-i </sup>榪欓噷i鏄腑闂寸幆瑕佸垹闄ょ殑杈規(guī)暟<br>   2錛夊浜庣孩鑹茶竟緇勬垚鐨勭幆錛岃繖4*i鏉¤竟鍙兘鍒犻櫎涓鏉★紝鍒犲浜?jiǎn)灏变細(xì)涓崢q為氫簡(jiǎn)錛屼篃鍗?*i縐?br>   鍐嶄箻?shù)笂涓涓粍鍚堟暟C(n,i)鍗沖彲<br>   鎵浠(n) = 鈭?4<sup>n-i</sup>*4*i*C(n,i)    1≤i≤n<br>   鏍蜂緥緇欎簡(jiǎn)2錛屾敞鎰忔槸2鏉″鉤琛岃竟褰㈡垚鐨勭幆錛?br>    <div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><span style="COLOR: #000000">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstdio</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstring</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> C[</span><span style="COLOR: #000000">101</span><span style="COLOR: #000000">][</span><span style="COLOR: #000000">101</span><span style="COLOR: #000000">],F[</span><span style="COLOR: #000000">101</span><span style="COLOR: #000000">];<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> pow4(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n)</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">4^n</span><span style="COLOR: #008000"><br><img id=Codehighlighter1_82_177_Open_Image onclick="this.style.display='none'; Codehighlighter1_82_177_Open_Text.style.display='none'; Codehighlighter1_82_177_Closed_Image.style.display='inline'; Codehighlighter1_82_177_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_82_177_Closed_Image onclick="this.style.display='none'; Codehighlighter1_82_177_Closed_Text.style.display='none'; Codehighlighter1_82_177_Open_Image.style.display='inline'; Codehighlighter1_82_177_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_82_177_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_82_177_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> ans</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,p</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">4</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(n)<br><img id=Codehighlighter1_111_162_Open_Image onclick="this.style.display='none'; Codehighlighter1_111_162_Open_Text.style.display='none'; Codehighlighter1_111_162_Closed_Image.style.display='inline'; Codehighlighter1_111_162_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_111_162_Closed_Image onclick="this.style.display='none'; Codehighlighter1_111_162_Closed_Text.style.display='none'; Codehighlighter1_111_162_Open_Image.style.display='inline'; Codehighlighter1_111_162_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_111_162_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_111_162_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(n</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">)ans</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">ans</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">p</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">2007</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        p</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">p</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">p</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">2007</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        n</span><span style="COLOR: #000000">>>=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> ans;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()<br><img id=Codehighlighter1_190_574_Open_Image onclick="this.style.display='none'; Codehighlighter1_190_574_Open_Text.style.display='none'; Codehighlighter1_190_574_Closed_Image.style.display='inline'; Codehighlighter1_190_574_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_190_574_Closed_Image onclick="this.style.display='none'; Codehighlighter1_190_574_Closed_Text.style.display='none'; Codehighlighter1_190_574_Open_Image.style.display='inline'; Codehighlighter1_190_574_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_190_574_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_190_574_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">freopen("in","r",stdin);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">freopen("out","w",stdout);</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"></span><span style="COLOR: #000000">    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_276_364_Open_Image onclick="this.style.display='none'; Codehighlighter1_276_364_Open_Text.style.display='none'; Codehighlighter1_276_364_Closed_Image.style.display='inline'; Codehighlighter1_276_364_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_276_364_Closed_Image onclick="this.style.display='none'; Codehighlighter1_276_364_Closed_Text.style.display='none'; Codehighlighter1_276_364_Open_Image.style.display='inline'; Codehighlighter1_276_364_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_276_364_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_276_364_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        C[i][i]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">C[i][</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> j</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;j</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">i;j</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            C[i][j]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">(C[i</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">][j]</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">C[i</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">][j</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">])</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">2007</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">;n</span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000">100</span><span style="COLOR: #000000">;n</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_392_472_Open_Image onclick="this.style.display='none'; Codehighlighter1_392_472_Open_Text.style.display='none'; Codehighlighter1_392_472_Closed_Image.style.display='inline'; Codehighlighter1_392_472_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_392_472_Closed_Image onclick="this.style.display='none'; Codehighlighter1_392_472_Closed_Text.style.display='none'; Codehighlighter1_392_472_Open_Image.style.display='inline'; Codehighlighter1_392_472_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_392_472_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_392_472_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        F[n]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000">n;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            F[n]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">(F[n]</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">pow4(n</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">i)</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">4</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">i</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">C[n][i])</span><span style="COLOR: #000000">%</span><span style="COLOR: #000000">2007</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> n,T;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    scanf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">T);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(T</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">)<br><img id=Codehighlighter1_514_559_Open_Image onclick="this.style.display='none'; Codehighlighter1_514_559_Open_Text.style.display='none'; Codehighlighter1_514_559_Closed_Image.style.display='inline'; Codehighlighter1_514_559_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_514_559_Closed_Image onclick="this.style.display='none'; Codehighlighter1_514_559_Closed_Text.style.display='none'; Codehighlighter1_514_559_Open_Image.style.display='inline'; Codehighlighter1_514_559_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_514_559_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_514_559_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        scanf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">n);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,F[n]);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000">        <br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div> </span></v:shapetype></span><br><br><br>闄勯鐩細(xì)<br><br>  <h1><span>Problem A. Spanning Tree</span></h1> <p><span>A peculiar graph, called <strong><em>n-circle five-angle graph</em></strong>, consists of a polygon with <strong><em>n</em></strong> vertices in the center, and each side of the central polygon is linked with a pentagon(pentagon: a polygon with 5 sides). There is an example of 4-circle five-angle graph below. Obviously, there are 4 vertices in the central polygon.</span></p> <p><span>Now, it is you time to calculate how many spanning trees could this special graph generate. Pay attention that all the vertices in the graph should be regarded as different ones. Do you still remember the definition of spanning tree? Perhaps you may be familiar with the terminology of MST(minimal spanning tree). Yes, a spanning tree T of a connected, undirected graph G is a tree composed of all the vertices and some (or perhaps all) of the edges of G.</span></p> <p align=center><img border=0 alt="" src="http://www.shnenglu.com/images/cppblog_com/yuan/a.jpg" width=238 height=225><br><br></p> <p align=center><span>Illustration 1: 4-circle five-angle graph</span></p> <p><strong><span>Input:</span></strong></p> <p><span>First line: <em>T</em>, the number of test case.</span></p> <p><span>Then follow <em>T</em> lines, each line contains a number <strong><em>n(n <= 2 <= 100)</em></strong>, indicating it is an n-circle five-angle graph.</span></p> <p><strong> </strong></p> <p><strong><span>Output</span></strong><strong><span>錛?/span></strong><strong></strong></p> <p><span>For each test case, output the answer mod 2007 pre line.</span></p> <p><strong> </strong></p> <p><strong><span>Sample Input</span></strong></p> <div> <p><span>1</span></p> <p><span>2</span></p> </div> <p> </p> <p><strong><span>Sample Output</span></strong></p> <div> <p><span>40</span></p> </div> <p align=left> <br>嫻嬭瘯鏁版嵁錛?a href="http://www.shnenglu.com/Files/Yuan/in.txt">in.txt</a>   <a href="http://www.shnenglu.com/Files/Yuan/out.txt">out.txt</a>  </p> <img src ="http://www.shnenglu.com/Yuan/aggbug/121815.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2010-07-31 22:29 <a href="http://www.shnenglu.com/Yuan/archive/2010/07/31/121815.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>hdu 2766 淇濈暀鏈澶氱殑鍏叡閮ㄥ垎錛岃鐐逛繚鐣欑殑璇濆垯鏍圭殑鍊間篃紜畾浜?/title><link>http://www.shnenglu.com/Yuan/archive/2010/04/29/113917.html</link><dc:creator>_Yuan</dc:creator><author>_Yuan</author><pubDate>Wed, 28 Apr 2010 16:16:00 GMT</pubDate><guid>http://www.shnenglu.com/Yuan/archive/2010/04/29/113917.html</guid><wfw:comment>http://www.shnenglu.com/Yuan/comments/113917.html</wfw:comment><comments>http://www.shnenglu.com/Yuan/archive/2010/04/29/113917.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Yuan/comments/commentRss/113917.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Yuan/services/trackbacks/113917.html</trackback:ping><description><![CDATA[<div style="BORDER-BOTTOM: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid; PADDING-BOTTOM: 4px; BACKGROUND-COLOR: #eeeeee; PADDING-LEFT: 4px; WIDTH: 98%; PADDING-RIGHT: 5px; FONT-SIZE: 13px; WORD-BREAK: break-all; BORDER-TOP: #cccccc 1px solid; BORDER-RIGHT: #cccccc 1px solid; PADDING-TOP: 4px"><img id=Codehighlighter1_0_169_Open_Image onclick="this.style.display='none'; Codehighlighter1_0_169_Open_Text.style.display='none'; Codehighlighter1_0_169_Closed_Image.style.display='inline'; Codehighlighter1_0_169_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_0_169_Closed_Image onclick="this.style.display='none'; Codehighlighter1_0_169_Closed_Text.style.display='none'; Codehighlighter1_0_169_Open_Image.style.display='inline'; Codehighlighter1_0_169_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_0_169_Closed_Text>/**/</span><span id=Codehighlighter1_0_169_Open_Text><span style="COLOR: #008000">/*</span><span style="COLOR: #008000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    涓嶉敊鐨勪竴閬撻<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    棰樻剰錛氱粰鍑轟竴媯典簩鍙夋爲(wèi)錛屾湁鏉冨鹼紝姹傛敼鍙樻渶灝忕殑鐐逛嬌騫寵 <br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鍏跺疄錛屾湁浜涚偣涓嶇敤鏀瑰彉錛屾墍浠ュ鏋滅k灞傜殑鐐筧涓嶇敤鏀瑰彉錛屽垯騫寵 鏃跺叾鏍圭殑鍊間負(fù)a*2^k<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鎵浠ョ畻鍑烘墍鏈夌偣錛屽鏋滃畠涓嶇敤鏀瑰彉鏃跺搴旀牴鐨勫鹼紝瀛樺湪鏁扮粍閲?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    鐒跺悗姹傝繖涓暟緇勯噷鐩稿悓涓暟鏈澶氱殑Max錛岀瓟妗堝氨鏄痶ot-Max浜?br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    榪樻湁錛岄亣鍒癧琛ㄧず灞傛++錛岄亣鍒癩琛ㄧず灞傛--<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif"></span><span style="COLOR: #008000">*/</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstdio</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cstring</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif">#include</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">algorithm</span><span style="COLOR: #000000">></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">using</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">namespace</span><span style="COLOR: #000000"> std;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">const</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> MAXN</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1000010</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> str[MAXN];<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"></span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> ans[MAXN];<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/None.gif"><br><img id=Codehighlighter1_321_876_Open_Image onclick="this.style.display='none'; Codehighlighter1_321_876_Open_Text.style.display='none'; Codehighlighter1_321_876_Closed_Image.style.display='inline'; Codehighlighter1_321_876_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_321_876_Closed_Image onclick="this.style.display='none'; Codehighlighter1_321_876_Closed_Text.style.display='none'; Codehighlighter1_321_876_Open_Image.style.display='inline'; Codehighlighter1_321_876_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedBlock.gif"></span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> main()</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_321_876_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_321_876_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> T;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    scanf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&</span><span style="COLOR: #000000">T);<br><img id=Codehighlighter1_359_863_Open_Image onclick="this.style.display='none'; Codehighlighter1_359_863_Open_Text.style.display='none'; Codehighlighter1_359_863_Closed_Image.style.display='inline'; Codehighlighter1_359_863_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_359_863_Closed_Image onclick="this.style.display='none'; Codehighlighter1_359_863_Closed_Text.style.display='none'; Codehighlighter1_359_863_Open_Image.style.display='inline'; Codehighlighter1_359_863_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">    </span><span style="COLOR: #0000ff">while</span><span style="COLOR: #000000">(T</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">)</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_359_863_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_359_863_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        scanf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%s</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,str);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> level</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">,tot</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_426_677_Open_Image onclick="this.style.display='none'; Codehighlighter1_426_677_Open_Text.style.display='none'; Codehighlighter1_426_677_Closed_Image.style.display='inline'; Codehighlighter1_426_677_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_426_677_Closed_Image onclick="this.style.display='none'; Codehighlighter1_426_677_Closed_Text.style.display='none'; Codehighlighter1_426_677_Open_Image.style.display='inline'; Codehighlighter1_426_677_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;str[i];i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_426_677_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_426_677_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(str[i]</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)level</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(str[i]</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)level</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_523_673_Open_Image onclick="this.style.display='none'; Codehighlighter1_523_673_Open_Text.style.display='none'; Codehighlighter1_523_673_Closed_Image.style.display='inline'; Codehighlighter1_523_673_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_523_673_Closed_Image onclick="this.style.display='none'; Codehighlighter1_523_673_Closed_Text.style.display='none'; Codehighlighter1_523_673_Open_Image.style.display='inline'; Codehighlighter1_523_673_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(str[i]</span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">9</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&&</span><span style="COLOR: #000000">str[i]</span><span style="COLOR: #000000">>=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_523_673_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_523_673_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">long</span><span style="COLOR: #000000"> tmp</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(;str[i]</span><span style="COLOR: #000000">&&</span><span style="COLOR: #000000">str[i]</span><span style="COLOR: #000000"><=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">9</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&&</span><span style="COLOR: #000000">str[i]</span><span style="COLOR: #000000">>=</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                    tmp</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">tmp</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">10</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">str[i]</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                i</span><span style="COLOR: #000000">--</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                tmp</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">tmp</span><span style="COLOR: #000000"><<</span><span style="COLOR: #000000">level;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                ans[tot</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">tmp;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">            }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">        }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        sort(ans,ans</span><span style="COLOR: #000000">+</span><span style="COLOR: #000000">tot);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> Max</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,cnt</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_743_833_Open_Image onclick="this.style.display='none'; Codehighlighter1_743_833_Open_Text.style.display='none'; Codehighlighter1_743_833_Closed_Image.style.display='inline'; Codehighlighter1_743_833_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_743_833_Closed_Image onclick="this.style.display='none'; Codehighlighter1_743_833_Closed_Text.style.display='none'; Codehighlighter1_743_833_Open_Image.style.display='inline'; Codehighlighter1_743_833_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">        </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">tot;i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_743_833_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_743_833_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">            </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(i</span><span style="COLOR: #000000">==</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">||</span><span style="COLOR: #000000">ans[i]</span><span style="COLOR: #000000">!=</span><span style="COLOR: #000000">ans[i</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">])cnt</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">;<br><img id=Codehighlighter1_789_829_Open_Image onclick="this.style.display='none'; Codehighlighter1_789_829_Open_Text.style.display='none'; Codehighlighter1_789_829_Closed_Image.style.display='inline'; Codehighlighter1_789_829_Closed_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif"><img style="DISPLAY: none" id=Codehighlighter1_789_829_Closed_Image onclick="this.style.display='none'; Codehighlighter1_789_829_Closed_Text.style.display='none'; Codehighlighter1_789_829_Open_Image.style.display='inline'; Codehighlighter1_789_829_Open_Text.style.display='inline';" align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ContractedSubBlock.gif">            </span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000"> </span><span style="BORDER-BOTTOM: #808080 1px solid; BORDER-LEFT: #808080 1px solid; BACKGROUND-COLOR: #ffffff; DISPLAY: none; BORDER-TOP: #808080 1px solid; BORDER-RIGHT: #808080 1px solid" id=Codehighlighter1_789_829_Closed_Text><img src="http://www.shnenglu.com/Images/dot.gif"></span><span id=Codehighlighter1_789_829_Open_Text><span style="COLOR: #000000">{<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                cnt</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">                </span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(Max</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">cnt)Max</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">cnt;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">            }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">        }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">        printf(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">%d\n</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,tot</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">Max);<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif">    }</span></span><span style="COLOR: #000000"><br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/InBlock.gif">    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br><img align=top src="http://www.shnenglu.com/Images/OutliningIndicators/ExpandedBlockEnd.gif">}</span></span></div> <img src ="http://www.shnenglu.com/Yuan/aggbug/113917.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Yuan/" target="_blank">_Yuan</a> 2010-04-29 00:16 <a href="http://www.shnenglu.com/Yuan/archive/2010/04/29/113917.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>hdoj 3363http://www.shnenglu.com/Yuan/archive/2010/04/27/113676.html_Yuan_YuanTue, 27 Apr 2010 01:29:00 GMThttp://www.shnenglu.com/Yuan/archive/2010/04/27/113676.htmlhttp://www.shnenglu.com/Yuan/comments/113676.htmlhttp://www.shnenglu.com/Yuan/archive/2010/04/27/113676.html#Feedback0http://www.shnenglu.com/Yuan/comments/commentRss/113676.htmlhttp://www.shnenglu.com/Yuan/services/trackbacks/113676.html/*
    濂介
    鏈変竴涓粨璁猴紝鏈澶氬彧闇涓ゅ垁鍒?br>    鐢ㄤ竴涓暱搴︿負(fù)n/2鐨勫尯闂村幓鎵氨琛?br>    濡傛灉榪欎釜鍖洪棿閲孒鐨勪釜鏁頒負(fù)h/2錛屽垯T鐨勪釜鏁頒篃涓簍/2錛屽氨婊¤凍浜?br>    鎵浠ュ彧鑰冭檻H鐨勫彉鍖栵紝褰撳畠婊¤凍浜?jiǎn)灏辨弧鑳鲣?br>    鑰屾壂鐨勮繃紼嬶紝H ++鎴?-鎴栦笉鍙橈紝浣嗙敱浜庝笉騫寵 錛屾墍浠ユ諱細(xì)鍙樺埌h/2
*/

#include
<cstdio>
#include
<cstring>

const int MAXN=100010;

int sum[MAXN];

int main(){
    
int n;
    
char ch;
    
while(scanf("%d\n",&n),n){
        
for(int i=1;i<=n;i++){
            ch
=getchar();
            sum[i]
=sum[i-1];
            
if(ch=='H')sum[i]++;
        }

        
if(sum[n]&1||n&1){printf("-1\n");continue;}
        
int beg=0,end=n/2;
        
while(end<n){
            
if((sum[end]-sum[beg])*2==sum[n]&&
            ((end
-sum[end])-(beg-sum[beg]))*2==n-sum[n])break;
            beg
++,end++;
        }

        
if(end==n/2)printf("1\n%d\n",end);
        
else printf("2\n%d %d\n",beg,end);
    }

    
return 0;
}


_Yuan 2010-04-27 09:29 鍙戣〃璇勮
]]> 国内精品久久久久久久涩爱 | 久久久噜噜噜久久中文字幕色伊伊| 久久天堂AV综合合色蜜桃网| 国产91久久精品一区二区| 久久精品国产一区二区三区日韩| 国产2021久久精品| 久久久久久久精品妇女99| 久久婷婷久久一区二区三区| 欧洲性大片xxxxx久久久| 99999久久久久久亚洲| 久久人人青草97香蕉| 精品亚洲综合久久中文字幕| 久久九九兔免费精品6| AAA级久久久精品无码区| 久久人人妻人人爽人人爽| 久久人人超碰精品CAOPOREN| 国产美女久久精品香蕉69| 欧美日韩精品久久免费| 国产亚洲成人久久| 精品免费久久久久久久| 亚洲欧美一区二区三区久久| 国产成人久久久精品二区三区| 久久天天躁狠狠躁夜夜网站| 久久人妻少妇嫩草AV蜜桃| 久久综合久久性久99毛片| 久久亚洲精品中文字幕三区| 久久久久免费看成人影片| 亚洲午夜久久久久久久久久| 亚洲欧美另类日本久久国产真实乱对白 | 久久久中文字幕日本| 情人伊人久久综合亚洲| 国产精品久久久久…| 韩国免费A级毛片久久| 九九久久自然熟的香蕉图片| 奇米影视7777久久精品| 国内精品人妻无码久久久影院 | 久久精品国产色蜜蜜麻豆| 国产毛片久久久久久国产毛片 | 青春久久| 久久人做人爽一区二区三区 | 色8久久人人97超碰香蕉987|