﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0"><channel><title><![CDATA[帅到惊动了党的BLOG]]></title><link>http://blog.mdbchina.com/3982864/</link><description><![CDATA[春天， 
   我把时间埋在地里， 
秋天， 
  我就会有很多时间啦～ 
­
  前面的路很坎坷， 
但毕竟是条路。 
  也许走过去， 
就是梦想中的地方。 
因此， 
坚持， 
成为此刻唯一能做且必须去做的事情…]]></description><language>zh-cn</language><copyright>mdbchina.com</copyright><pubDate>Sun, 23 Nov 2008 13:26:18 GMT</pubDate><lastBuildDate>Sun, 23 Nov 2008 13:26:18 GMT</lastBuildDate><generator>mdbchina.com</generator><docs>http://cyber.law.harvard.edu/rss/rss.html</docs><ttl>30</ttl><item><title><![CDATA[daily]]></title><link>http://blog.mdbchina.com/post/1451356/</link><description><![CDATA[<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这个博客快要成了我的日记本了，不知前来光顾的friends会有什么感想~
</p>]]></description><author>帅到惊动了党</author><pubDate>Sun, 23 Nov 2008 13:26:18 GMT</pubDate></item><item><title><![CDATA[家教]]></title><link>http://blog.mdbchina.com/post/1451167/</link><description><![CDATA[<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;今天做了人生中的第二份家教，感觉很不错，O(&cap;_&cap;)O~ 
</p>
<p>
&nbsp;
</p>
<p>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 今天下午过了个很快乐的下午&mdash;&mdash;&nbsp; 特此记录^_^ 
</p>]]></description><author>帅到惊动了党</author><pubDate>Sat, 22 Nov 2008 23:39:04 GMT</pubDate></item><item><title><![CDATA[访问量一直在增]]></title><link>http://blog.mdbchina.com/post/1448767/</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 很久没来过blog了，但是访问量依然在增，快要达到25000，很感谢那些一直光顾的friends.]]></description><author>帅到惊动了党</author><pubDate>Wed, 19 Nov 2008 18:04:54 GMT</pubDate></item><item><title><![CDATA[睡过了头&amp;%%]]></title><link>http://blog.mdbchina.com/post/1448516/</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 昨晚SQL实验做到2点，很久没这么晚睡了，等待着的流星雨又没有看到，昨晚广州的天空很晴朗，看得到几颗星星一闪一闪的，在广州很难看得到星星的，但是就是没有看到流星，连流星的影子都没瞥到，很遗憾，今早一二节不用上课，但是睡过了头，睡到了十点半，结果破了这个学期没有逃课的记录<img src="/Emotions2/qq/35.gif" border="0" alt="" align="absMiddle" />]]></description><author>帅到惊动了党</author><pubDate>Wed, 19 Nov 2008 13:14:12 GMT</pubDate></item><item><title><![CDATA[blog]]></title><link>http://blog.mdbchina.com/post/1448512/</link><description><![CDATA[<p>
&nbsp;&nbsp; 今天看了一个北师大一个很强大的acmer女生的baidu.hi，blog，很感动 
</p>
<p>
&nbsp; (<a href="http://hi.baidu.com/5l2">http://hi.baidu.com/5l2</a>_) 
</p>
<p>
&nbsp; 决定以后也要多多记录平时的生活点滴，无论哪个方面的 
</p>]]></description><author>帅到惊动了党</author><pubDate>Wed, 19 Nov 2008 13:05:07 GMT</pubDate></item><item><title><![CDATA[往事如风，不能再重来]]></title><link>http://blog.mdbchina.com/post/1431488/</link><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 很久没做过题了，也很久没贴过题上来了，不知以后还会不会往这里贴题，那些曾经的疯狂已快将成为回忆了，那股不顾一切做题的热情也一去不复回了，一切都将成往事了，往事，往事，我心中的痛&hellip;&hellip;&hellip;]]></description><author>帅到惊动了党</author><pubDate>Tue, 28 Oct 2008 22:20:04 GMT</pubDate></item><item><title><![CDATA[uva10019/q10019]]></title><link>http://blog.mdbchina.com/post/1412742/</link><description><![CDATA[<p>
&nbsp;//uva.acm.10019 将十进制转换成2进制，十进制转换成16进制，再转换成2进制 
</p> <p>
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=10;<br />
int a[N+1];<br />
int d2b(int n)<br />
{<br />
&nbsp; int s=0;<br />
&nbsp; while(n)<br />
&nbsp; {<br />
&nbsp;&nbsp;&nbsp; if(n%2==1) s++;<br />
&nbsp;&nbsp;&nbsp; n/=2;<br />
&nbsp; }<br />
&nbsp; return s; <br />
}<br />
int h2b(int n)<br />
{<br />
&nbsp;int s=0,i=0;<br />
&nbsp;while(n)<br />
&nbsp;{ a[i]=n%10;n/=10; i++; }<br />
&nbsp;for(int j=i-1;j&gt;=0;j--) s=(s+a[j])*16;<br />
&nbsp;int sum=0;<br />
&nbsp;&nbsp; while(s)<br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp; if(s%2==1)&nbsp; sum++;<br />
&nbsp;&nbsp;&nbsp;&nbsp; s/=2;<br />
&nbsp;&nbsp; }<br />
&nbsp;&nbsp; return sum;<br />
}<br />
int main()<br />
{<br />
&nbsp;int t,n;<br />
&nbsp;scanf(&quot;%d&quot;,&amp;t);<br />
&nbsp;while(t--)<br />
&nbsp;{<br />
&nbsp; scanf(&quot;%d&quot;,&amp;n);<br />
&nbsp; printf(&quot;%d %d\n&quot;,d2b(n),h2b(n));<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}
</p>]]></description><author>帅到惊动了党</author><pubDate>Sun, 05 Oct 2008 19:23:31 GMT</pubDate></item><item><title><![CDATA[3n+1]]></title><link>http://blog.mdbchina.com/post/1398062/</link><description><![CDATA[<p>
/*&nbsp; problem 3n+1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</p> <p> <a href="http://acm.uva.es/p/v1/100.html">http://acm.uva.es/p/v1/100.html</a><br />
虽然时间有5s,但是如果用循环的话,将会超时,因为数字有100 0000,<br />
故当3*n+1没有几步就超出了int型范围，因此要用long long 型，<br />
输入scanf(&quot;%lld&quot;,&amp;n);<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
int t=0;<br />
int fun(long long x)<br />
{ t++;<br />
&nbsp;if(x==1) return t;<br />
&nbsp;&nbsp;&nbsp;&nbsp; if(x%2!=0) return fun(3*x+1);<br />
&nbsp;&nbsp;&nbsp;else return fun(x/2);<br />
}<br />
int main()<br />
{<br />
&nbsp;int n,m,q,s;long long a,b,i;<br />
&nbsp;while(scanf(&quot;%lld%lld&quot;,&amp;n,&amp;m)!=EOF)<br />
&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp; a=n;b=m;s=0;<br />
&nbsp;&nbsp;&nbsp;&nbsp; if(a&gt;b) swap(a,b);<br />
&nbsp;&nbsp; &nbsp;for(i=a;i&lt;=b;i++)<br />
&nbsp;&nbsp; &nbsp;{&nbsp; t=0;<br />
&nbsp;&nbsp; &nbsp;&nbsp;q=fun(i);<br />
&nbsp;&nbsp; &nbsp;&nbsp;if(q&gt;s)s=q;<br />
&nbsp;&nbsp; &nbsp;}<br />
&nbsp;&nbsp; &nbsp;printf(&quot;%lld %lld %d\n&quot;,n,m,s);<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}
</p>]]></description><author>帅到惊动了党</author><pubDate>Mon, 15 Sep 2008 18:47:41 GMT</pubDate></item><item><title><![CDATA[zju1201     前后转换]]></title><link>http://blog.mdbchina.com/post/1394898/</link><description><![CDATA[<p>
/*Inversion&nbsp;&nbsp;
</p> <p>
&nbsp;2008-09-08 22:49:35 Accepted 1201 C++ 00:00.00 836K 天将降大任于我&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</p> <p>
&nbsp;当P序列转换为I序列时， i前有多少个比其大的数，则下标为i的位置填该数，即得到以I开头的序列。以I开头的序列转换成P开头的序列则是，位置为i的数表示的是：在P序列中，数字i前面有多少个比它大的数，即得到P序列<br />
当输入为cin时，chaar字符型数据可以用比较形式if(c=='I'),不需要用strcmp()函数<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=50;<br />
int p[N+1],I[N+1],s[N+1];<br />
int main()<br />
{<br />
&nbsp;int n,i,j,num;char&nbsp; c;<br />
&nbsp;while(cin&gt;&gt;n&amp;&amp;n)<br />
&nbsp;{&nbsp; memset(s,0,sizeof(s));<br />
&nbsp;&nbsp;&nbsp; memset(p,0,sizeof(p));<br />
&nbsp;&nbsp; cin&gt;&gt;c;<br />
&nbsp; for(i=0;i&lt;n;i++)<br />
&nbsp; cin&gt;&gt;p[i];<br />
&nbsp; if(c=='P')<br />
&nbsp; {<br />
&nbsp;&nbsp; for(i=0;i&lt;n;i++)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //检查前面是否有比它大的数，有多少个就加到多少个，num<br />
&nbsp;&nbsp; {&nbsp;&nbsp; num=0;<br />
&nbsp;&nbsp;&nbsp; for(j=0;j&lt;=i-1;j++)<br />
&nbsp;&nbsp;&nbsp;&nbsp; if(p[j]&gt;p[i]) num++;<br />
&nbsp;&nbsp;&nbsp;&nbsp; s[p[i]]=num;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //然后将这个数作为下标存储num，作为I输出的第......</p>]]></description><author>帅到惊动了党</author><pubDate>Thu, 11 Sep 2008 17:49:18 GMT</pubDate></item><item><title><![CDATA[zju2165   广度优先搜索]]></title><link>http://blog.mdbchina.com/post/1394834/</link><description><![CDATA[/*Red and Black&nbsp; 广度优先搜索&nbsp;&nbsp; 简单题<br />
2008-09-11 16:17:15 Accepted 2165 C++ 00:00.05 848K 天将降大任于我 <br />
先把w,h周围的行和列，即将w+1列,h+1行,0行,0列都置为'#'，，不能过去，然后输入的存放在i=1~h,j=1~w中。<br />
这样无须考虑边界的情况，&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; char，string类型的数据不要用scanf(),printf()输入输出，否则很麻烦<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
int d[4][2]={0,1,1,0,0,-1,-1,0},temp;&nbsp;&nbsp;&nbsp; //定义为前后左右相邻的4点<br />
const int N=20;<br />
char a[N+1][N+1];bool b[N+1][N+1];&nbsp; //b[][]用来标记该点是否走过了<br />
int fun(int x,int y)<br />
{&nbsp;&nbsp; <br />
&nbsp;for(int i=0;i&lt;=3;i++)<br />
&nbsp;{<br />
&nbsp;&nbsp;if(a[x+d[i][0]][y+d[i][1]]=='.'&amp;&amp;b[x+d[i][0]][y+d[i][1]]==0) <br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;b[x+d[i][0]][y+d[i][1]]=1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; temp++;<br />
&nbsp;&nbsp;&nbsp; fun(x+d[i][0],y+d[i][1]);<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return temp;<br />
}<br />
int main()<br />
{<br />
&nbsp;int w,h,i,j,x,y;<br />
&nbsp;while(cin&gt;&gt;w&gt;&gt;h&amp;&amp;(w&amp;&amp......]]></description><author>帅到惊动了党</author><pubDate>Thu, 11 Sep 2008 16:29:26 GMT</pubDate></item><item><title><![CDATA[zju2965   简单题]]></title><link>http://blog.mdbchina.com/post/1394776/</link><description><![CDATA[/*Accurately Say &quot;CocaCola&quot;!&nbsp;&nbsp;&nbsp; 简单题<br />
2008-09-11 15:19:20 Accepted 2965 C++ 00:00.00 2988K 天将降大任于我 <br />
碰到7或者7的倍数的同学必须说&quot;CocaCola&quot;，第一个是7，第4到第10个都是从70开始，第11个从270开始，<br />
因为270～280，共有11个，后面的都是从700开始，一直到99个<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=100;<br />
int a[N+1];<br />
int main()<br />
{<br />
&nbsp;int t,n,i;<br />
&nbsp;a[1]=7;a[2]=27;<br />
&nbsp;for(i=3;i&lt;=10;i++) a[i]=70;<br />
&nbsp;a[11]=270;<br />
&nbsp;for(i=12;i&lt;=99;i++) a[i]=700;<br />
&nbsp;scanf(&quot;%d&quot;,&amp;t);<br />
&nbsp;for( i=1;i&lt;=t;i++)<br />
&nbsp;{&nbsp;scanf(&quot;%d&quot;,&amp;n);<br />
&nbsp;&nbsp;&nbsp;&nbsp; printf(&quot;%d\n&quot;,a[n]);<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}]]></description><author>帅到惊动了党</author><pubDate>Thu, 11 Sep 2008 15:27:38 GMT</pubDate></item><item><title><![CDATA[zju2966   查找最短路径 但不是用最短路径算法]]></title><link>http://blog.mdbchina.com/post/1391895/</link><description><![CDATA[<p>
/*Build The Electric System&nbsp;&nbsp; 查找最短路径&nbsp; <br />
2008-09-08 19:59:18 Accepted 2966 C++ 00:00.10 2304K 天将降大任于我<br />
先按照权值从小到大排序，将最小的权值的那边的两个端点标记为-1已经走过，然后寻找两个端点一个端点已经走过，另一个还没有走过的边 <br />
把权值加进来（因为已经排序过，故可从最小权值的点开始，将没走过的点拉进来）<br />
There will be at most one line between any two villages，因为每两个最多只有一条边，故无须考虑两端点有多边连接的情况<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=125000;<br />
int a[N+1],b[N+1],k[N+1];<br />
int v[501];<br />
void sort1(int e)<br />
{<br />
&nbsp;int i,j,temp;<br />
&nbsp;for(i=0;i&lt;e;i++)<br />
&nbsp;&nbsp;for(j=i+1;j&lt;e;j++)<br />
&nbsp;&nbsp;&nbsp;if(k[i]&gt;k[j])<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;temp=a[i],a[i]=a[j],a[j]=temp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; temp=b[i],b[i]=b[j],b[j]=temp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;temp=k[i],k[i]=k[j],k[j]=temp;<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;<br />
}<br />
int main()<br />
{
</p> <p>
&nbsp;int n,p,e,i,j;<br />
&nbsp;scanf(&quot;%d&quot;,&amp;n);<br />
&nbsp;while(n--)<br />
&nbsp;{<br />
&nbsp;&nbsp;scanf(&quot;%d%d&quot;,&amp;p,&amp;......</p>]]></description><author>帅到惊动了党</author><pubDate>Mon, 08 Sep 2008 20:13:50 GMT</pubDate></item><item><title><![CDATA[zju2208     字符串的交换处理]]></title><link>http://blog.mdbchina.com/post/1389762/</link><description><![CDATA[/*To and Fro&nbsp; 字符串处理<br />
2008-09-05 22:46:21 Accepted 2208 C++ 00:00.02 896K 天将降大任于我 <br />
第一行从左数去，第二行右边数过来，第三行左边数过去&hellip;&hellip;<br />
&nbsp; 先将字符串处理成从左往右排列的，单行递增处理，双行递减处理即可。<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;string&gt;<br />
using namespace std;<br />
const int N=200;<br />
char a[N+1][N+1];<br />
int main()<br />
{<br />
&nbsp;int n,i,t,j,r;string s;<br />
&nbsp;while(cin&gt;&gt;n&amp;&amp;n)<br />
&nbsp;{<br />
&nbsp;&nbsp;cin&gt;&gt;s;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; int k=s.length();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; t=k/n;r=0;<br />
&nbsp;&nbsp;for(i=1;i&lt;=t;i++)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;if(i%2!=0)<br />
&nbsp;&nbsp;&nbsp;&nbsp;for(j=0;j&lt;n;j++)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; a[i][j]=s[r++];<br />
&nbsp;&nbsp;&nbsp;else<br />
&nbsp;&nbsp;&nbsp;&nbsp;for(j=n-1;j&gt;=0;j--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;a[i][j]=s[r++];<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;for(i=0;i&lt;n;i++)<br />
&nbsp;&nbsp;&nbsp;for(j=1;j&lt;=t;j++)<br />
&nbsp;&nbsp;&nbsp;&nbsp;cout&lt;&lt;a[j][i]......]]></description><author>帅到惊动了党</author><pubDate>Fri, 05 Sep 2008 22:54:23 GMT</pubDate></item><item><title><![CDATA[zju1108    最长不下降子序列]]></title><link>http://blog.mdbchina.com/post/1387607/</link><description><![CDATA[<p>
/*FatMouse's Speed&nbsp;&nbsp;&nbsp; 动态规划思想&nbsp; 最长不下降子序列<br />
2008-09-03 20:41:45 Accepted 1108 C++ 00:00.01 1036K 天将降大任于我 
</p> <p>
花了n多时间来检查错误，结果发现是很低级的，无语～<br />
*/<br />
#include&lt;iostream&gt; <br />
#include&lt;algorithm&gt;<br />
using namespace std;<br />
struct node<br />
{<br />
&nbsp;int w,s,i;<br />
}a[10001];<br />
int b[10001],c[10001];<br />
bool cmp(node x,node y)<br />
{<br />
&nbsp;return (x.w&lt;y.w||(x.w==y.w&amp;&amp;x.s!=y.s));&nbsp; //排序，如果两个的w相等，则只要s不等即可<br />
}<br />
int main()<br />
{&nbsp; int j=0,Max,d=0,x,l,r;<br />
&nbsp; while(scanf(&quot;%d%d&quot;,&amp;a[j].w,&amp;a[j].s)!=EOF)<br />
&nbsp; {&nbsp;&nbsp; a[j].i=j+1;j++;}<br />
&nbsp; sort(a,a+j,cmp); <br />
&nbsp; memset(b,0,sizeof(b));<br />
&nbsp; memset(c,0,sizeof(c));<br />
&nbsp; a[j].w=10001,a[j].s=0;&nbsp;&nbsp; //比较时比最后一个数的w大，比它的s小<br />
&nbsp; for(int t=j-1;t&gt;=0;t--)&nbsp;&nbsp;&nbsp; //}最长不下降子序列算法<br />
&nbsp; {<br />
&nbsp;&nbsp;&nbsp; Max=0;<br />
&nbsp;for( r=t+1;r&lt;=j;r++)<br />
&nbsp;&nbsp;if((a[r].w&gt;a[t].w)&amp;&amp;(a[r].s&lt;a[t].s)&amp;&amp;(b[r]+1&gt;=Max))<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;Max=b[r]+1;<br />
&nbsp;&nbsp;&......</p>]]></description><author>帅到惊动了党</author><pubDate>Wed, 03 Sep 2008 21:18:47 GMT</pubDate></item><item><title><![CDATA[zju2029    二分查找]]></title><link>http://blog.mdbchina.com/post/1387563/</link><description><![CDATA[/*The Intervals&nbsp;&nbsp; 二分查找<br />
2008-09-03 19:49:57 Accepted 2029 C++ 00:00.01 848K 天将降大任于我 <br />
先对a[]排序，然后用二分查找法查出b[i]在a[]中的位置<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;algorithm&gt;<br />
using namespace std;<br />
const int N=1000;<br />
int a[N+1],b[N+1];<br />
bool cmp(int x,int y)<br />
{<br />
&nbsp;return x&lt;y;<br />
}<br />
int main()<br />
{<br />
&nbsp;int n,m,k,i,j,mid,t=0;<br />
&nbsp;while(scanf(&quot;%d%d&quot;,&amp;n,&amp;m)!=EOF)<br />
&nbsp;{&nbsp;&nbsp; <br />
&nbsp;&nbsp;for(i=0;i&lt;n;i++)&nbsp; scanf(&quot;%d&quot;,&amp;a[i]);<br />
&nbsp;&nbsp;for(i=0;i&lt;m;i++) scanf(&quot;%d&quot;,&amp;b[i]);<br />
&nbsp;&nbsp;sort(a,a+n,cmp);<br />
&nbsp;&nbsp;for(k=0;k&lt;m;k++)<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;if(b[k]&lt;a[0]||b[k]&gt;=a[n-1]) {printf(&quot;no such interval\n&quot;);continue;}&nbsp; //当b[k]==a[0]时可以，但是当b[k]==a[n-1]时不符合，因为括号为[)，不包括右端点<br />
&nbsp;&nbsp; i=0;j=n-1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; while(i&lt;j-1)&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //循环条件为i&lt;j-1，如为i&lt;j则死循环<br />
&nbsp;&nbsp; {&nbsp;&nbsp; mid=(i+j)/2;......]]></description><author>帅到惊动了党</author><pubDate>Wed, 03 Sep 2008 19:58:53 GMT</pubDate></item><item><title><![CDATA[zju2797   最短路径]]></title><link>http://blog.mdbchina.com/post/1386848/</link><description><![CDATA[/*106 miles to Chicago&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 最短路径&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 邻接表表示<br />
2008-09-03 09:57:35 Accepted 2797 C++ 00:00.11 880K 天将降大任于我 <br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=100;<br />
int s[N+2][N+2];double cost[N+2];bool check[N+2];<br />
int main()<br />
{<br />
&nbsp;&nbsp; int n,m,x,y,d; int i,j,t,b;double k,Max;<br />
&nbsp;&nbsp; while(scanf(&quot;%d&quot;,&amp;n)&amp;&amp;n)<br />
&nbsp;&nbsp; {&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; scanf(&quot;%d&quot;,&amp;m); <br />
&nbsp;&nbsp;&nbsp; memset(check,0,sizeof(check));<br />
&nbsp;&nbsp;&nbsp; memset(cost,0,sizeof(cost));<br />
&nbsp;&nbsp;&nbsp; memset(s,0,sizeof(s));<br />
&nbsp;&nbsp;&nbsp; for(i=0;i&lt;m;i++) <br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp; scanf(&quot;%d%d%d&quot;,&amp;x,&amp;y,&amp;d);<br />
&nbsp;&nbsp;&nbsp;&nbsp; s[x][y]=d;s[y][x]=d;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp; cost[1]=1.0;Max=0.0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; //cost[]下标从1开始，是因为走得......]]></description><author>帅到惊动了党</author><pubDate>Wed, 03 Sep 2008 10:27:26 GMT</pubDate></item><item><title><![CDATA[zju1203    最小生成树]]></title><link>http://blog.mdbchina.com/post/1386569/</link><description><![CDATA[/*Swordfish&nbsp;&nbsp;&nbsp;&nbsp; 最小生成树<br />
2008-09-02 22:01:43 Accepted 1203 C++ 00:00.01 924K 天将降大任于我 <br />
求出每两点的距离，即作为两点的权值<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;cmath&gt;<br />
using namespace std;<br />
const int N=100;<br />
double s[N+1][N+1]; bool check[N+1];<br />
struct node<br />
{<br />
&nbsp;double x,y;<br />
}a[N+1];<br />
double fun(double x1,double y1,double x2,double y2 )<br />
{<br />
&nbsp;return&nbsp; sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));<br />
}<br />
int main()<br />
{<br />
&nbsp;&nbsp; int n,t=0,i,j,k,d; double r,sum,Min;<br />
&nbsp;&nbsp; while(scanf(&quot;%d&quot;,&amp;n)!=EOF&amp;&amp;n)<br />
&nbsp;&nbsp; {&nbsp; t++;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if(t!=1) printf(&quot;\n&quot;);<br />
&nbsp;&nbsp; memset(check,0,sizeof(check));<br />
&nbsp;&nbsp;&nbsp;&nbsp; for(i=0;i&lt;n;i++) scanf(&quot;%lf%lf&quot;,&amp;a[i].x,&amp;a[i].y);<br />
&nbsp;&nbsp;&nbsp;&nbsp; for(i=0;i&lt;n;i++)<br />
&nbsp;&nbsp;&nbsp; for(j=0;j&lt;n;j++)<br />
&nbsp;&nbsp; { r=fun(a[i].x,a[i].y,a[j].x,a[j].y);<br />
&nbsp;&nbsp;&nbsp;&nbsp; s[i][j]=r;<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp; check[0]=1;sum=......]]></description><author>帅到惊动了党</author><pubDate>Tue, 02 Sep 2008 22:06:50 GMT</pubDate></item><item><title><![CDATA[zju1372     最小生成树]]></title><link>http://blog.mdbchina.com/post/1386525/</link><description><![CDATA[/*Networking&nbsp; 最小生成树<br />
2008-09-02 20:13:14 Accepted 1372 C++ 00:00.03 852K 天将降大任于我 <br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=50;<br />
int s[N+2][N+2];bool&nbsp; check[N+2];<br />
int main()<br />
{<br />
&nbsp;int p,r,i,j,a,b,c,Min,t,sum;<br />
&nbsp;while(scanf(&quot;%d&quot;,&amp;p)!=EOF)<br />
&nbsp;{&nbsp;&nbsp; <br />
&nbsp;&nbsp;if(p==0) break;<br />
&nbsp;&nbsp;scanf(&quot;%d&quot;,&amp;r); <br />
&nbsp;&nbsp;if(r==0) {printf(&quot;0\n&quot;);continue;}<br />
&nbsp;&nbsp;memset(s,102,sizeof(s));<br />
&nbsp;&nbsp;for(i=0;i&lt;r;i++) <br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;scanf(&quot;%d%d%d&quot;,&amp;a,&amp;b,&amp;c);<br />
&nbsp;&nbsp;&nbsp;if(s[a][b]&gt;c) {s[a][b]=c;s[b][a]=c;} //输入时有重复的边但是权值大的舍去<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;memset(check,0,sizeof(check));<br />
&nbsp;&nbsp;check[1]=1;sum=0;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(int k=1;k&lt;p;k++) //总共有p-1条边<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;Min=101;<br />
&nbsp;&nbsp;&nbsp;for(i=1;i&lt;=p;i++)&nbsp;&nbsp; //从第一个结点开始寻找与第一个结点相邻接的最小的权值，并记下该权值对应的结点<br />
&nbsp;&nbsp;&nbsp;if(chec......]]></description><author>帅到惊动了党</author><pubDate>Tue, 02 Sep 2008 20:34:31 GMT</pubDate></item><item><title><![CDATA[zju3019   最长子串]]></title><link>http://blog.mdbchina.com/post/1385541/</link><description><![CDATA[/*Puzzle<br />
2008-09-01 21:28:42 Accepted 3019 C++ 00:00.61 920K 天将降大任于我 <br />
先排序，再比较，比较时设置参数t用来存储两者有相同的数时第二个串下一个的位置，下次就从t开始比较<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;algorithm&gt;<br />
using namespace std;<br />
const int N=10000;<br />
int a[N+1],b[N+1];<br />
bool cmp(int a,int b)<br />
{ <br />
&nbsp;return a&lt;b;<br />
}<br />
int main()<br />
{<br />
&nbsp;int n,m,i,j,d,t;<br />
&nbsp;while(scanf(&quot;%d%d&quot;,&amp;n,&amp;m)!=EOF)<br />
&nbsp;{&nbsp;&nbsp; d=0;<br />
&nbsp;&nbsp;for(i=0;i&lt;n;i++)&nbsp; scanf(&quot;%d&quot;,&amp;a[i]);<br />
&nbsp;&nbsp;for(i=0;i&lt;m;i++)&nbsp; scanf(&quot;%d&quot;,&amp;b[i]);<br />
&nbsp;&nbsp;sort(a,a+n,cmp);<br />
&nbsp;&nbsp;sort(b,b+m,cmp);&nbsp;<br />
&nbsp;&nbsp;for(i=0,t=0;i&lt;n;i++)<br />
&nbsp;&nbsp;{&nbsp;for(j=t;j&lt;m;j++)<br />
&nbsp;&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;if(a[i]==b[j]) {d++;t=j+1;break;}<br />
&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;printf(&quot;%d\n&quot;,d);<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}]]></description><author>帅到惊动了党</author><pubDate>Mon, 01 Sep 2008 23:27:38 GMT</pubDate></item><item><title><![CDATA[北京奥运赛场上的十大雷图,无厘头之搞笑篇]]></title><link>http://blog.mdbchina.com/post/1378585/</link><description><![CDATA[<p>
&nbsp;
</p> <div align="center"> <a href="javascript:changeUrl(1)"><img style="cursor: pointer" src="http://img1.qq.com/2008/pics/12519/12519334.jpg" alt="点击浏览下一张" /> <div align="center">
旱地拔葱 
</div> </a> </div> <div align="center"> <a href="javascript:changeUrl(2)"><img style="cursor: pointer" src="http://img1.qq.com/2008/pics/12519/12519336.jpg" alt="点击浏览下一张" /></a> </div> <div id="Explain" align="center"> <div align="center">
菲尔普斯搞怪表情 
</div> <div align="center"> <a href="javascript:changeUrl(3)"><img style="cursor: pointer" src="http://img1.qq.com/2008/pics/12519/12519339.jpg" alt="点击浏览下一张" />......</a></div></div>]]></description><author>帅到惊动了党</author><pubDate>Mon, 25 Aug 2008 13:04:13 GMT</pubDate></item><item><title><![CDATA[我爱福原爱]]></title><link>http://blog.mdbchina.com/post/1377927/</link><description><![CDATA[<div class="mode_table_menu"> <span class="left">发表时间： 2008年08月21日 14时54分&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> </div> <div class="mode_table_menu"> <span class="left">本文地址： http://qzone.qq.com/blog/622001255-1219301646</span> <br /> <br />
有人说过，爱一个人不需要理由。我觉得不需要理由也是理由，这个理由是有爱慕才有爱，有爱恋也生爱，在这个仁爱的世界里，谁也别不承认。<br />
我说我爱福原爱，我的娇妻肯定不会吃醋，为什么？因为我是出于对小女孩的那种怜爱，不是心生怜悯的那种爱，这个世界怜悯太多就会廉价，我是觉得福原爱太珍贵，对她是敝帚自珍的那种爱。<br />
说是&ldquo;敝帚&rdquo;，也不准确，人家女孩子在日本是国宝，在我们这里怎么是敝帚呢？是从运动竞技的角度讲，福原爱不是一个绝对优秀的运动员，至少在成绩上可以证明这一点。但是无论在日本还是在中国，没有人期望这个邻家小妹妹去球桌前干掉张怡宁，或者拼掉王楠，没有人有这个期望值，大家都希望她能来比赛，代表日本来中国，代表中国的乒乓技术展示给日本和世界上所有热爱和平的人民。她今天来了，这就足够了。<br />
福原爱今年满打满算不到20周，她出生在仙台，一个在中国中学生中的知名度比日本还高的地方。听到福原爱说自己是仙台人，我这个读过、背过鲁迅先生很多文章的文学青年会感到分外亲切，然后还能记起先生的那些话：&ldquo;仙台是一个市镇，并不大；冬天冷得厉害；还没有中国的学生。&rdquo;然后记起龙舌兰和胶菜、难以下咽的芋梗汤，还有那个神秘的藤野严九郎。<br />
福原爱是否知道这些并不重要，关键她来自仙台，这个在中国人心中分外亲切的符号，好过她来自广岛或者长崎。福原爱的学识应该是高得很的，她去年被早稻田大学录取了，据说早稻田大学是日本首相的摇篮。福原爱是不是日本未来的首相，这一点也并不关键，关键是她会为现任的和未来的日本首相介绍她的第二故乡&mdash;&mdash;中国。<br />
我曾经想过福原先生和福原太太当时是怎样把年幼的爱留在中国的，他们一定热爱中国，并且认为把福原爱交付给中国是件负责任且放心的事情。中国也没有辜负福原一家的美好心意和愿景，练就了福原一身球艺和一口流利的东北话。<br />
我爱福原爱，我爱她想哭就哭、想笑就笑的性格，我更爱她时常疑惑的眼神，以及对新鲜事物保持好奇而平和的心态。我爱她单纯，她的单纯不仅超过了通常的日本......</div>]]></description><author>帅到惊动了党</author><pubDate>Sun, 24 Aug 2008 13:16:17 GMT</pubDate></item><item><title><![CDATA[瓷娃娃失败不哭 福原爱下次努力]]></title><link>http://blog.mdbchina.com/post/1377925/</link><description><![CDATA[<p align="center"> <img src="http://www.aoyunchina.com/uploads/userup/0808/19141Z64211.jpg" border="0" alt="" width="640" height="480" />&nbsp;
</p> <p align="center"> <img src="http://www.aoyunchina.com/uploads/userup/0808/191419356434.jpg" border="0" alt="" width="640" height="480" />&nbsp;
</p> <p align="center"> <img src="http://www.aoyunchina.com/uploads/userup/0808/1914194K927.jpg" border="0" alt="" width="640" height="480" />......</p>]]></description><author>帅到惊动了党</author><pubDate>Sun, 24 Aug 2008 13:11:04 GMT</pubDate></item><item><title><![CDATA[zju1406  最小生成树]]></title><link>http://blog.mdbchina.com/post/1377509/</link><description><![CDATA[<p>
/*Jungle Roads&nbsp;&nbsp; 最小生成树<br />
2008-08-23 14:09:18 Accepted 1406 C++ 00:00.00 836K 天将降大任于我<br />
输入单个字符时用scanf(&quot;%c&quot;,&amp;m)，结果没有输出，用 scanf(&quot;%s&quot;,&amp;m)就可以，不知为何<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
int main()<br />
{<br />
&nbsp;int n,k,i,p,j,Min,t,sum; char m,o;<br />
&nbsp;int w[27][27],mst[27];<br />
&nbsp;while(scanf(&quot;%d&quot;,&amp;n)&amp;&amp;n)<br />
&nbsp;{&nbsp;&nbsp;&nbsp; <br />
&nbsp;for(i=1;i&lt;=n;i++)<br />
&nbsp; { &nbsp; mst[i]=0;<br />
&nbsp;&nbsp; for(j=1;j&lt;=n;j++)<br />
&nbsp;&nbsp;&nbsp;&nbsp; w[i][j]=w[j][i]=105;<br />
&nbsp; }&nbsp;&nbsp;&nbsp; <br />
&nbsp; for(i=1;i&lt;=n-1;i++)<br />
&nbsp; {<br />
&nbsp;&nbsp; scanf(&quot;%s%d&quot;,&amp;m,&amp;k); <br />
&nbsp;&nbsp; for(j=1;j&lt;=k;j++)<br />
&nbsp;&nbsp; { <br />
&nbsp;&nbsp;&nbsp; scanf(&quot;%s%d&quot;,&amp;o,&amp;p);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; w[m-64][o-64]=p;w[o-64][m-64]=p;&nbsp; <br />
&nbsp;&nbsp; }<br />
&nbsp; }<br />
&nbsp; mst[1]=1; sum=0;<br />
&nbsp; for(i=1;i&lt;=n-1;i++)<br />
&nbsp; {<br />
&nbsp;&nbsp; Min=102;......</p>]]></description><author>帅到惊动了党</author><pubDate>Sat, 23 Aug 2008 14:16:40 GMT</pubDate></item><item><title><![CDATA[zju1403]]></title><link>http://blog.mdbchina.com/post/1377503/</link><description><![CDATA[/*Safecracker<br />
2008-08-23 09:41:49 Accepted 1403 C++ 00:00.17 848K 天将降大任于我 <br />
搜索 输入的字符串s中满足a-b^2+c^3-d^4+e^5=n 的字母 按字典序&nbsp; 最优输出<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;algorithm&gt;<br />
#include&lt;cmath&gt;<br />
#include&lt;string&gt;<br />
using namespace std;<br />
const int N=12;<br />
int a[N+1];<br />
bool cmp(int a,int b)<br />
{<br />
&nbsp;return a&lt;b;<br />
}<br />
int main()<br />
{<br />
&nbsp; string s;int n,k,i,i1,i2,i3,i4,i5,t;bool f;<br />
&nbsp; while(cin&gt;&gt;n&gt;&gt;s)<br />
&nbsp; {&nbsp;&nbsp; if(n==0&amp;&amp;s==&quot;END&quot;)&nbsp; break;<br />
&nbsp;&nbsp; f=0;<br />
&nbsp;&nbsp; k=s.length()-1;<br />
&nbsp;&nbsp; for(i=0;i&lt;=k;i++) a[i]=s[i]-'A'+1;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; sort(a,a+k,cmp);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i1=k;i1&gt;=0;i1--)<br />
&nbsp;&nbsp;&nbsp; for(i2=k;i2&gt;=0;i2--)<br />
&nbsp;&nbsp;&nbsp;&nbsp; for(i3=k;i3&gt;=0;i3--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i4=k;i4&gt;=0;i4--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i5=k;i5&gt;=0;i5--)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&n......]]></description><author>帅到惊动了党</author><pubDate>Sat, 23 Aug 2008 14:12:03 GMT</pubDate></item><item><title><![CDATA[zju1070       物理学的电流电压关系]]></title><link>http://blog.mdbchina.com/post/1375322/</link><description><![CDATA[<p>
/*<font size="5" color="#0000ff">Bode Plot</font> </p> <p>
2008-08-20 08:22:24 Accepted 1070 C++ 00:00.00 840K 天将降大任于我 <br />
有大牛如是解说： 
</p> <p>
&nbsp;
</p> <p>
给没学过高等物理的同学们看的, 允许高手们在一边偷笑<br />
----------------------------------------------------<br />
这是一道物理题。先整理出题目中给出的公式：<br />
v1 = VS * cos &omega;t (1)<br />
v2 = VR * cos (&omega;t + &theta;) (2)<br />
v2 = i * R (3)<br />
i = C * d/dt(v1 - v2) (4) 
</p> <p>
先将(2)(3)联立，并将(4)代入，得：<br />
VR * cos (&omega;t + &theta;) = R * C * d/dt (VS * cos &omega;t - VR * cos (&omega;t + &theta;<br />
)) 
</p> <p>
补充一个知识：d/dt表示求关于t的导数。我们又用D[f, x]表示df/dx，即求函数<br />
f关于x的导数。下面计算求导的部分： 
</p> <p>
D[VS * cos &omega;t - VR * cos (&omega;t + &theta;), t]<br />
= D[VS * cos &omega;t, t] - D[VR * cos (&omega;t + &theta;), t]<br />
= VS * D[cos &omega;t, t] - VR * D[cos (&omega;t + &theta;), t] 
</p> <p>
此时变量不一致，不能直接求导，需要用到链式求导法则：<br />
设有D[f,x] = df/dx，函数f = f(g), 函数g = g(x)。因为df/dx = df/dg * <br />
dg/dx，所以函数f关于x的导数，等于函数f关于g的导数乘上函数g关于x的导数。 
</p> <p>
又由常用公式D[cosx, x] = -sinx，D[x, x] = 1, D[ab, x] = a * D[b, x] + <br />
D[a, x] * b，我们继续可得：<br />
D[cos &omega;t, t]<br />
= D[cos &omega;t, &omega;t] * D[&omega;t, t]<br />
=......</p>]]></description><author>帅到惊动了党</author><pubDate>Wed, 20 Aug 2008 08:56:21 GMT</pubDate></item><item><title><![CDATA[zju1904  棱台公式]]></title><link>http://blog.mdbchina.com/post/1366805/</link><description><![CDATA[/*Beavergnaw&nbsp; 棱台公式<br />
2008-08-07 14:57:25 Accepted 1904 C++ 00:00.00 844K 天将降大任于我 <br />
棱台公式 ：(s1+s2+sqrt(s1*s2))*(1.0/3)*h&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s1为上底,s2为下底,h为高<br />
题中公式为(s1+s2+sqrt(s1*s2))* (1.0/3) *(D-d)/2+pi*(d/2)^2*d=pi(D/2)^2*D-v<br />
化简为D^3-d^3=6v/pi<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;cmath&gt;<br />
using namespace std;<br />
const double pi=3.1415926;<br />
int main()<br />
{<br />
&nbsp;int d1,v;double s;<br />
&nbsp;while(scanf(&quot;%d%d&quot;,&amp;d1,&amp;v)!=EOF)<br />
&nbsp;{<br />
&nbsp;&nbsp;if(d1==0&amp;&amp;v==0) break;<br />
&nbsp;&nbsp;else<br />
&nbsp;&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s=d1*d1*d1-double(6*v)/pi;<br />
&nbsp;&nbsp;&nbsp;printf(&quot;%.3lf\n&quot;,pow(s,1.0/3));<br />
&nbsp;&nbsp;}<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}]]></description><author>帅到惊动了党</author><pubDate>Thu, 07 Aug 2008 15:12:07 GMT</pubDate></item><item><title><![CDATA[zju2006      子串比较]]></title><link>http://blog.mdbchina.com/post/1366556/</link><description><![CDATA[/*Glass Beads&nbsp;&nbsp; 子串比较<br />
2008-08-07 10:50:02 Accepted 2006 C++ 00:00.71 908K 天将降大任于我 <br />
&nbsp; 函数substr(s,n1,n2)&nbsp;&nbsp; 表示在s串中从n1位置开始，取n2个字符的子串<br />
*/<br />
#include&lt;iostream&gt;<br />
#include&lt;string&gt;<br />
using namespace std;<br />
int main()<br />
{<br />
&nbsp;int n,j,t;string s,s1,s2,s3;<br />
&nbsp;cin&gt;&gt;n;<br />
&nbsp;for(int i=1;i&lt;=n;i++)<br />
&nbsp;{<br />
&nbsp;&nbsp;cin&gt;&gt;s;<br />
&nbsp;&nbsp;int k=s.length();s3=s;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(j=1,t=0;j&lt;k;j++)<br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp; s1=s.substr(j,k-j);<br />
&nbsp;&nbsp;&nbsp; s2=s.substr(0,j);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; s1=s1+s2;<br />
&nbsp;&nbsp;&nbsp; if(s1&lt;s3) {s3=s1;t=j;}<br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp; cout&lt;&lt;t+1&lt;&lt;endl;<br />
&nbsp;}<br />
&nbsp;return 0;<br />
}]]></description><author>帅到惊动了党</author><pubDate>Thu, 07 Aug 2008 11:02:34 GMT</pubDate></item><item><title><![CDATA[zju1024  日历游戏]]></title><link>http://blog.mdbchina.com/post/1366491/</link><description><![CDATA[<p>
/*Calendar Game&nbsp;&nbsp; 日历游戏<br />
2008-08-07 09:36:44 Accepted 1024 C++ 00:00.00 836K 天将降大任于我 <br />
有大牛如是说;<br />
参考了别人的算法，数学果然是王道！<br />
2001.11.4的 月+日= 11 + 4 = 奇数。。<br />
由于无论是月加一还是日加一月日和的奇偶性都会发生变化, 除了2.28、9.30和11.30.<br />
2.28、9.30、11.30明显有必胜的策略:<br />
2.28-&gt;3.28,<br />
9.30-&gt;10.1,<br />
11.30-&gt;12.1<br />
所以除了剩余的两个特殊的情况以外，其余只要满足月+日等于偶数就有必胜的策略。
</p> <p> <br />
除了上面几个特殊之外，如果是这步偶数，则下一步必变为奇数，故必胜，只要是下一步可变为奇数的，都可胜
</p> <p>
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
int main()<br />
{<br />
&nbsp;int n,a,b,c;bool f;<br />
&nbsp;scanf(&quot;%d&quot;,&amp;n);<br />
&nbsp;for(int i=1;i&lt;=n;i++)<br />
&nbsp;{&nbsp;&nbsp; f=0;<br />
&nbsp;&nbsp;scanf(&quot;%d%d%d&quot;,&amp;a,&amp;b,&amp;c);<br />
&nbsp;&nbsp;if(b==2&amp;&amp;c==28) f=1;<br />
&nbsp;&nbsp;else if(b==9&amp;&amp;c==30) f=1;<br />
&nbsp;&nbsp;else if(b==11&amp;&amp;c==30) f=1;<br />
&nbsp;&nbsp;else if((b+c)%2==0)&nbsp; f=1;<br />
&nbsp;&nbsp;if(f) printf(&quot;YES\n&quot;);<br />
&nbsp;&nbsp;else printf(&quot;NO\n&quot;);<br />
&nbsp;}<br />
&nbsp;&nbsp; return 0;<br />
}
</p>]]></description><author>帅到惊动了党</author><pubDate>Thu, 07 Aug 2008 09:58:37 GMT</pubDate></item><item><title><![CDATA[zju1720   多项式的输出]]></title><link>http://blog.mdbchina.com/post/1363526/</link><description><![CDATA[<p>
/*Polynomial Showdown&nbsp; 多项式的输出<br />
2008-08-05 16:37:47 Accepted 1720 C++ 00:00.01 840K 天将降大任于我&nbsp;&nbsp; 1AC<br />
按照题目意思来，一步一步做即可<br />
分几种情况讨论：<br />
&nbsp;1)&nbsp; 系数是&gt;0,&lt;0,=0&nbsp; <br />
&nbsp;&nbsp;&nbsp;&nbsp; =0时是多项式末尾还是其他地方的情况。末尾时如果前面的系数有不为0的，则可忽略，否则如果全为0，则输出0<br />
&nbsp; &gt;0,&lt;0时要考虑是否前面的系数都是0，这里可用一个标记f,f=1说明前面的系数有不为0的,若f=0，说明前面的系数都是0<br />
&nbsp; 若f=1,则+,-前后应该分开，即 + , - ;若f=0，则+,-前面不分,即+ ,- ,只后面分<br />
&nbsp;2)&nbsp; 系数是否=1，!=1则输出a[i],否则只输出x^(8-i)，输出时如果次数是1，即当i=7时，只能输出x<br />
&nbsp;3)还有一种 情况是当a[i]为负数且前面的系数全为0时,输出直接输出a[i],不再输出&quot;-&quot;号。 
</p> <p>
&nbsp; 具体还有哪些情况看题目，有些可能还没有说到，不过代码中都有考虑到了，不难，只要按常理来做就行，关键是面面想到<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=9;<br />
int a[N+1];<br />
int main()<br />
{<br />
&nbsp;&nbsp; int i,f;<br />
&nbsp;&nbsp; while(scanf(&quot;%d&quot;,&amp;a[0])!=EOF)<br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp; for(i=1;i&lt;9;i++)&nbsp; scanf(&quot;%d&quot;,&amp;a[i]);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for(i=0,f=0;i&lt;9;i++)<br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp; if(a[i]==0) {<br />
&nbsp;&nbsp;&nbsp;&......</p>]]></description><author>帅到惊动了党</author><pubDate>Tue, 05 Aug 2008 17:01:41 GMT</pubDate></item><item><title><![CDATA[zju2136         最长子序列长度]]></title><link>http://blog.mdbchina.com/post/1363195/</link><description><![CDATA[/*Longest Ordered Subsequence<br />
2008-08-05 01:47:41 Accepted 2136 C++ 00:00.01 844K 天将降大任于我 <br />
将序列中的数字从大到小标记，最大的没标，从第二大开始（被标过的且a[i][1]的值<br />
符合递减顺序的即为子序列的元素）,到最小的那个即为最长子序列的个数－1，故最后需＋1<br />
*/<br />
#include&lt;iostream&gt;<br />
using namespace std;<br />
const int N=1000;<br />
int a[N+1][2];<br />
int main()<br />
{<br />
&nbsp;int n,k,i,j,t,Max;<br />
&nbsp;scanf(&quot;%d&quot;,&amp;k);<br />
&nbsp;for(t=1;t&lt;=k;t++)<br />
&nbsp;{<br />
&nbsp;&nbsp; scanf(&quot;%d&quot;,&amp;n);<br />
&nbsp;&nbsp; for(i=0;i&lt;n;i++)<br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;scanf(&quot;%d&quot;,&amp;a[i][0]);<br />
&nbsp;&nbsp;a[i][1]=0;<br />
&nbsp;&nbsp; }<br />
&nbsp;&nbsp;&nbsp;&nbsp; for(i=n-2;i&gt;=0;i--)<br />
&nbsp; {&nbsp;&nbsp; Max=-1;<br />
&nbsp;&nbsp; for(j=i+1;j&lt;n;j++)&nbsp; <br />
&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp; if(a[j][0]&gt;a[i][0]&amp;&amp;a[j][1]+1&gt;Max)&nbsp; <br />
&nbsp;&nbsp;&nbsp; {<br />
&nbsp;&nbsp;&nbsp;&nbsp; Max=a[j][1]+1;&nbsp; a[i][1]=a[j][1]+1; <br />
&nbsp;&nbsp;&nbsp; }<br />
&nbsp;&nbsp; }<br />
&nbsp; }<br />
&nbsp; Max=-1;<br />
&nbsp; for(i=0;i&lt;n;i++)<br />
&nbsp;&nbsp; if(a[i][1]&gt;Max) Max=a[i][1];......]]></description><author>帅到惊动了党</author><pubDate>Tue, 05 Aug 2008 15:08:28 GMT</pubDate></item></channel></rss>