??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩精品久久久久久久电影,精品久久久久久久久久久久久久久,亚洲国产精品热久久http://www.shnenglu.com/tankzhouqiang/category/16142.htmlzh-cnWed, 02 Mar 2011 04:33:14 GMTWed, 02 Mar 2011 04:33:14 GMT60W试题(转蝲Q?/title><link>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140969.html</link><dc:creator>周强</dc:creator><author>周强</author><pubDate>Wed, 02 Mar 2011 04:19:00 GMT</pubDate><guid>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140969.html</guid><wfw:comment>http://www.shnenglu.com/tankzhouqiang/comments/140969.html</wfw:comment><comments>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140969.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tankzhouqiang/comments/commentRss/140969.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tankzhouqiang/services/trackbacks/140969.html</trackback:ping><description><![CDATA[<h2> <font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font> <a href="http://www.shnenglu.com/mzty/archive/2008/02/18/42875.html" id="viewpost1_TitleUrl">W试题(转)</a> </font></font></font></font></font></font></font></font></font></font></h2> <font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font> </font></font></font></font></font></font></font></font></font></font> <p><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><br>一、如何判断一个单链表是有环的Q(注意不能用标志位Q最多只能用两个额外指针Q?br>   struct node { char val; node* next;}<br>   bool check(const node* head) {} //return false : 无环Qtrue: 有环<br>    一UOQnQ的办法是Q搞两个指针Q一个每ơ递增一步,一个每ơ递增两步Q如果有环的话两者必焉合,反之亦然Q:<br>    bool check(const node* head)<br>    {<br>         if(head==NULL) <br>              return false;   <br>         node *low=head, *fast=head->next;<br>         while(fast!=NULL && fast->next!=NULL)<br>        {<br>               low=low->next;<br>               fast=fast->next->next;<br>               if(low==fast) <br>                    return true;<br>        }<br>       return false;<br>   }</font></font></font></font></font></font></font></font></font></font></p> <p><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font> 二、删除一个单w表的最中间的元素,要求旉可能短Q不能用两ơ@环)<br>struct link<br>{<br>    int data;<br>    struct link *next;<br>};<br><font color="#ff0000">void delMiddle(link *head)<br></font>{<br>    if(head == NULL)<br>           return;<br>    else if(head->next == NULL)<br>    {<br>            delete head;<br>            return;<br>    }<br>    else<br>    {<br>            link *low = head;<br>            link *fast = head->next;<br>            while(fast != NULL && fast->next != NULL)<br>            {   <br>                       fast = fast->next->next;<br>                       if(fast == NULL)<br>                                    break;<br>                       low = low->next;<br>            }<br>            link *temp = low->next;<br>            low->next = low->next->next;<br>            delete temp;<br>  <br>    }<br>}<br>int main()<br>{<br>       struct link *head,*l;<br>       struct link *s;<br>       head = (link*)malloc(sizeof(link));<br>       head->data=0;<br>       head->next = NULL;<br>       l = head;<br>       for(int i=1; i<9; i++)<br>       {<br>            s = (link*)malloc(sizeof(link));<br>            s->data = i;<br>            s->next = NULL;<br>            l->next= s;<br>            l = l->next;<br>       }<br>       print(head);<br>       delMiddle(head);<br>       print(head);<br>       return 0;<br>}</font></font></font></font></font></font></font></font></font></font></p> <p><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>三、输入nQ求一个n*n矩阵Q规定矩阉|45度线递增(威盛)<br><span style="color: #008000;">/**<br> * 得到如下样式的二l数l?br>* zigzagQjpeg~码里取象素数据的排列顺序)<br>*<br>*   0, 1, 5, 6,14,15,27,28,<br>*   2, 4, 7,13,16,26,29,42,<br>*   3, 8,12,17,25,30,41,43,<br>*   9,11,18,24,31,40,44,53,<br>*   10,19,23,32,39,45,52,54,<br>*   20,22,33,38,46,51,55,60,<br>*   21,34,37,47,50,56,59,61,<br>*   35,36,48,49,57,58,62,63<br> */</span><span style="color: #008000;"><br></span><span style="color: #000000;">void zigzag(int n)<br>{<br> int **a =(int**) malloc(n*sizeof(int *));  //分配I间<br> <br> if(NULL == a)<br>  return ;<br> int i;<br> for(i = 0; i < n; i++) {<br>        if((a[i] =(int*) malloc(n * sizeof(int))) == NULL) {<br>            while(--i>=0)<br>                free(a[i]);<br>            free(a);<br>            return;<br>        }<br>    }<br> <br> bool flag = false; //q个标志位用来判断是?5度角生成q是225度角生成<br> int count = 0;<br> for(i=0; i<n; i++)  //生成的上半部分的数据<br> {<br>  <br>  if(flag)<br>  {<br>   for(int r = 0; r<=i; r++)<br>   {<br>    a[r][i-r] = count;<br>    count++;<br>   }<br>   flag = false;<br>  }<br>  else<br>  {<br>   for(int r = i; r>=0; r--)<br>   {<br>    a[r][i-r] = count;<br>    count++;<br>   }<br>   flag = true;<br>  }<br> }<br> for(i=n-1; i>=0; i--)  //生成的是下半部分的数?br> {<br> // cout<<i<<endl;<br>  if(flag)<br>  {<br>   for(int r = 0; r<=i-1; r++)<br>   {<br>    int r1 = n-i+r;       //代表当前?br>    int c1 = 2*n-i-1-r1;  //代表当前?br>    a[r1][c1] = count;<br>    count++;<br>   }<br>   flag = false;<br>  }<br>  else<br>  {<br>   for(int r = i-1; r>=0; r--)<br>   {<br>    cout<<"ddd"<<endl;<br>    int r1 = n-i+r;<br>    int c1 = 2*n-i-1-r1;<br> //   cout<<r1<<","<<c1<<endl;<br>    a[r1][c1] = count;<br>    count++;<br>   }<br>   flag = true;<br>  }<br> }<br> for(int r = 0; r<n; r++)<br> {<br>  for(int c=0; c<n; c++)<br>   cout<<a[r][c]<<",";<br>  cout<<endl;<br> }<br>}<br>int main()<br>{<br> int n;<br> cin>>n;<br> zigzag(n);<br> return 0;<br>}<br>|上q有一个h写了一个比较y的算法:<br><span style="color: #008000;">/*</span><span style="color: #008000;">*<br>* 得到如下样式的二l数l?br>* zigzagQjpeg~码里取象素数据的排列顺序)<br>*<br>*   0, 1, 5, 6,14,15,27,28,<br>*   2, 4, 7,13,16,26,29,42,<br>*   3, 8,12,17,25,30,41,43,<br>*   9,11,18,24,31,40,44,53,<br>*   10,19,23,32,39,45,52,54,<br>*   20,22,33,38,46,51,55,60,<br>*   21,34,37,47,50,56,59,61,<br>*   35,36,48,49,57,58,62,63<br></span><span style="color: #008000;">*/</span><span style="color: #000000;"><br><br>#include </span><span style="color: #000000;"><</span><span style="color: #000000;">stdio.h</span><span style="color: #000000;">></span><span style="color: #000000;"><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> main()<br>{<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> N;<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> s, i, j;<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> squa;<br>    scanf(</span><span style="color: #800000;">"</span><span style="color: #800000;">%d</span><span style="color: #800000;">"</span><span style="color: #000000;">, </span><span style="color: #000000;">&</span><span style="color: #000000;">N);<br>    </span><span style="color: #008000;">/*</span><span style="color: #008000;"> 分配I间 </span><span style="color: #008000;">*/</span><span style="color: #000000;"><br>    </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: #000000;">=</span><span style="color: #000000;"> malloc(N </span><span style="color: #000000;">*</span><span style="color: #000000;"> </span><span style="color: #0000ff;">sizeof</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;">));<br>    </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(a </span><span style="color: #000000;">==</span><span style="color: #000000;"> NULL)<br>        </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">;<br>    </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">0</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>        </span><span style="color: #0000ff;">if</span><span style="color: #000000;">((a[i] </span><span style="color: #000000;">=</span><span style="color: #000000;"> malloc(N </span><span style="color: #000000;">*</span><span style="color: #000000;"> </span><span style="color: #0000ff;">sizeof</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;"> NULL) {<br>            </span><span style="color: #0000ff;">while</span><span style="color: #000000;">(</span><span style="color: #000000;">--</span><span style="color: #000000;">i</span><span style="color: #000000;">>=</span><span style="color: #800080;">0</span><span style="color: #000000;">)<br>                free(a[i]);<br>            free(a);<br>            </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">;<br>        }<br>    }<br>    </span><span style="color: #008000;">/*</span><span style="color: #008000;"> 数组赋?</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br>    squa </span><span style="color: #000000;">=</span><span style="color: #000000;"> N</span><span style="color: #000000;">*</span><span style="color: #000000;">N;    <br>    </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">0</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>        </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(j </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">; j </span><span style="color: #000000;"><</span><span style="color: #000000;"> N; j</span><span style="color: #000000;">++</span><span style="color: #000000;">) {<br>            s </span><span style="color: #000000;">=</span><span style="color: #000000;"> i </span><span style="color: #000000;">+</span><span style="color: #000000;"> j;<br>            </span><span style="color: #0000ff;">if</span><span style="color: #000000;">(s </span><span style="color: #000000;"><</span><span style="color: #000000;"> N)<br>                <font color="#ff0000">a[i][j] </font></span><font color="#ff0000"><span style="color: #000000;">=</span><span style="color: #000000;"> s</span><span style="color: #000000;">*</span><span style="color: #000000;">(s</span><span style="color: #000000;">+</span><span style="color: #800080;">1</span><span style="color: #000000;">)</span><span style="color: #000000;">/</span><span style="color: #800080;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">+</span><span style="color: #000000;"> (((i</span><span style="color: #000000;">+</span><span style="color: #000000;">j)</span><span style="color: #000000;">%</span><span style="color: #800080;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">==</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">)</span><span style="color: #000000;">?</span></font><span style="color: #000000;"><font color="#ff0000"> i : j);<br></font>            </span><span style="color: #0000ff;">else</span><span style="color: #000000;"> {<br>                s </span><span style="color: #000000;">=</span><span style="color: #000000;"> (N</span><span style="color: #000000;">-</span><span style="color: #800080;">1</span><span style="color: #000000;">-</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: #800080;">1</span><span style="color: #000000;">-</span><span style="color: #000000;">j);<br>                <font color="#ff0000">a[i][j] </font></span><font color="#ff0000"><span style="color: #000000;">=</span><span style="color: #000000;"> squa </span><span style="color: #000000;">-</span><span style="color: #000000;"> s</span><span style="color: #000000;">*</span><span style="color: #000000;">(s</span><span style="color: #000000;">+</span><span style="color: #800080;">1</span><span style="color: #000000;">)</span><span style="color: #000000;">/</span><span style="color: #800080;">2</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;"> (((i</span><span style="color: #000000;">+</span><span style="color: #000000;">j)</span><span style="color: #000000;">%</span><span style="color: #800080;">2</span><span style="color: #000000;"> </span><span style="color: #000000;">==</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">)</span><span style="color: #000000;">?</span></font><span style="color: #000000;"><font color="#ff0000"> i : j));<br></font>            }<br>        }<br>    </span><span style="color: #008000;">/*</span><span style="color: #008000;"> 打印输出 </span><span style="color: #008000;">*/</span><span style="color: #000000;">    <br>    </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(i </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">0</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>        </span><span style="color: #0000ff;">for</span><span style="color: #000000;">(j </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">; j </span><span style="color: #000000;"><</span><span style="color: #000000;"> N; j</span><span style="color: #000000;">++</span><span style="color: #000000;">)<br>            printf(</span><span style="color: #800000;">"</span><span style="color: #800000;">%-6d</span><span style="color: #800000;">"</span><span style="color: #000000;">, a[i][j]);<br>        printf(</span><span style="color: #800000;">"</span><span style="color: #800000;">\n</span><span style="color: #800000;">"</span><span style="color: #000000;">);<br>    }<br>    </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">;<br>}<br></span></span></font></font></font></font></font></font></font></font></font></font></p> <p><span style="color: #000000;"><span style="color: #000000;"><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>四、打??000的整敎ͼ不能使用程控制语句(for,while,goto{?也不能用递归<br>1.<br>typedef <span style="color: #0000ff;">struct</span><span style="color: #000000;"> _test{<br>    </span><span style="color: #0000ff;">static</span><span style="color: #000000;"> </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> a;<br>    _test(){<br>        printf(</span><span style="color: #800000;">"</span><span style="color: #800000;">%d\n</span><span style="color: #800000;">"</span><span style="color: #000000;">,_test::a);<br>        a</span><span style="color: #000000;">++</span><span style="color: #000000;">;<br>    }<br>  }Test;<br>  </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> Test::a </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">1</span><span style="color: #000000;">;<br><br>  </span><span style="color: #0000ff;">int</span><span style="color: #000000;">   main()   <br>  {   <br>    Test tt[</span><span style="color: #800080;">1000</span><span style="color: #000000;">];<br>    </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">;<br>  }   <br>2.<br>#include   <stdio.h> <br>#define   B   P,P,P,P,P,P,P,P,P,P <br>#define   P   L,L,L,L,L,L,L,L,L,L <br>#define   L   I,I,I,I,I,I,I,I,I,I,N <br>#define   I   printf( "%3d   ",i++) <br>#define   N   printf( "\n ") <br>int  main() <br>{ <br>    int   i   =   1; <br>    B; <br>} <br>?br><span style="color: #0000ff;">#define</span><span style="color: #000000;"> A(x) x;x;x;x;x;x;x;x;x;x;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">int</span><span style="color: #000000;"> main () <br>{<br>    </span><span style="color: #0000ff;">int</span><span style="color: #000000;"> n </span><span style="color: #000000;">=</span><span style="color: #000000;"> </span><span style="color: #800080;">1</span><span style="color: #000000;">; <br>    A(A(A(printf (</span><span style="color: #800000;">"</span><span style="color: #800000;">%d </span><span style="color: #800000;">"</span><span style="color: #000000;">, n</span><span style="color: #000000;">++</span><span style="color: #000000;">))));<br><br>    </span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #800080;">0</span><span style="color: #000000;">;<br>}</span><br><br></span></font></font></font></font></font></font></font></font></font></font></span></span><span style="color: #000000;"><span style="color: #000000;"></span></span></p> <p><span style="color: #000000;"><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>五、struct   S   { <br>        int   i; <br>        int   *   p; <br>}; <br>void   main() <br>{ <br>        S   s; <br>        int   *   p   =   &s.i; <br>        p[0]   =   4; <br>        p[1]   =   3; <br>        s.p   =   p; <br>        s.p[1]   =   1; <br>        s.p[0]   =   2; <br>} <br>问程序会在哪一行死掉?QmicrosoftQ?br>解: S   s; <br>         <span style="color: #0000ff;">int</span><span style="color: #000000;">   </span><span style="color: #000000;">*</span><span style="color: #000000;">   p   </span><span style="color: #000000;">=</span><span style="color: #000000;">   </span><span style="color: #000000;">&</span><span style="color: #000000;">s.i;        </span><span style="color: #008000;">//</span><span style="color: #008000;">s.i的地址存储在p?/span><span style="color: #008000;"><br></span><span style="color: #000000;">        p[</span><span style="color: #800080;">0</span><span style="color: #000000;">]   </span><span style="color: #000000;">=</span><span style="color: #000000;">   </span><span style="color: #800080;">4</span><span style="color: #000000;">;                    </span><span style="color: #008000;">//</span><span style="color: #008000;">修改了s.i</span><span style="color: #008000;"><br></span><span style="color: #000000;">         p[</span><span style="color: #800080;">1</span><span style="color: #000000;">]   </span><span style="color: #000000;">=</span><span style="color: #000000;">   </span><span style="color: #800080;">3</span><span style="color: #000000;">;                    </span><span style="color: #008000;">//</span><span style="color: #008000;">修改了s.p</span><span style="color: #008000;"><br></span><span style="color: #000000;">         s.p   </span><span style="color: #000000;">=</span><span style="color: #000000;">   p;                    </span><span style="color: #008000;">//</span><span style="color: #008000;">s.p指向s.i</span><span style="color: #008000;"><br></span><span style="color: #000000;">         s.p[</span><span style="color: #800080;">1</span><span style="color: #000000;">]   </span><span style="color: #000000;">=</span><span style="color: #000000;">   </span><span style="color: #800080;">1</span><span style="color: #000000;">;               </span><span style="color: #008000;">//</span><span style="color: #008000;">修改s.p本n</span><span style="color: #008000;"><br></span><span style="color: #000000;">        s.p[</span><span style="color: #800080;">0</span><span style="color: #000000;">]   </span><span style="color: #000000;">=</span><span style="color: #000000;">   </span><span style="color: #800080;">2</span><span style="color: #000000;">;               </span><span style="color: #008000;">//</span><span style="color: #008000;">s.p指向的是0x00000001,试向这里写,出错<br><font color="#000000">     s.p[0]       =       2;   时出?<br>     因ؓs.p存的是s.i的地址,s.p[1]为s.p,当s.p[1]=1?s.p此时存放的是1?而不是地址s.i,故在s.p[0]   =   2时出? <br>此时相当于s.p=ox00000001;地址ox0000001   =   2;当然出错了 <br><br>如果语句s.p[0]   =2   先于s.p[1]=1则程序就不会出错.此时语句相当于s.i=2;s.p=1; </font><br></span></font></font></font></font></font></font></font></font></font></font></span></p> <span style="color: #000000;"><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>六、题目描qͼ <br>1.   int   swap(int   *x,int   *y) <br>{ <br>    if(x==NULL   ¦ ¦   y==NULL) <br>        return   -1; <br>    *x   +=   *y; <br>    *y   =   *x-   *y; <br>    *x   -=   *y; <br>      return   1; <br>} <br>h错,溢出已经考虑Q不是错?<br>2. <br>void   foo(int   *x,   int   *y) <br>{ <br>    *x   +=   *y; <br>    *x   +=   *y; <br>} <br>void   fun(int   *x,   int   *y) <br>{   <br>    *x   +=   2   *   (*y); <br>  } <br>问两个函数是否等P能否互换 <br>解答<font color="#ff0000">Q第一题的函数是交换。但假如考虑x,   y都是指向同一个变?l果是这个变量的gؓ0. <br>W二题的两个函数是有区别?也考虑x,y是指向同一个变?q样W一个函数的l果是这个变量的4?但第二个函数的结果是变量??/font>.</font></font></font></font></font></font></font></font></font></font></span><img src ="http://www.shnenglu.com/tankzhouqiang/aggbug/140969.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tankzhouqiang/" target="_blank">周强</a> 2011-03-02 12:19 <a href="http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140969.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>W试?Q{载)http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140970.html周强周强Wed, 02 Mar 2011 04:19:00 GMThttp://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140970.htmlhttp://www.shnenglu.com/tankzhouqiang/comments/140970.htmlhttp://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140970.html#Feedback0http://www.shnenglu.com/tankzhouqiang/comments/commentRss/140970.htmlhttp://www.shnenglu.com/tankzhouqiang/services/trackbacks/140970.html W试题二Q{Q?/a>
l定九个敎ͼ例如Q?Q?Q?Q?Q?Q?Q?Q?Q?计算九个数的排列的种数。需要考虑重复情况Q如果给??Q则只有一U结果?
限制Q不能用stl?
要求Q完成函?nbsp;unsigned int foo(unsigned int *arr);
输入法代码Qƈl出法复杂度分析?

分析Q?nbsp;

#include <cstdlib>
#include <iostream>

using namespace std;
unsigned int foo(unsigned int *arr)
{
    unsigned int p[] ={1,2,6,24,120,720,5040,40320,362880};
    unsigned int i,j,c,s=p[8];//first the number is p99
    for(i = 0; i < 7; i++)
       for(j = i+1; j < 8; j++)
       {
           if(arr[i]>arr[j])  //swap two number
           {
               arr[i]^=arr[j];
               arr[j]^=arr[i];
               arr[i]^=arr[j];
           }   
       }   
    i = 0;
    c = 0;
    while(i<8)
    {
        j = i+1;
        while(arr[i]==arr[j])//compute the number of the repetition 
        {
            c++;   
            j++; 
        }   
        s/=p[c];
        c=0;
        i=j;
    }   
    return s;
}
  
int main()
{
    unsigned int a[]={1,3,3,5,6,7,8,8,9};
    cout<<"The number of permutation is: "<<foo(a)<<endl;
    system("pause");
    return 0;
}    
q可以改q排序那部分?/font>

转一个经典的题目Q?/font>

l一个天q?问如何用3ơ把q个球扑և?
q且求出q个球是比其他的轻q是?
?2个球分别~号为a1,a2,a3.......a10,a11,a12.
W一步:?2球分开3拨,每拨4个,a1~a4W一拨,Cؓb1Q?nbsp;a5~a8W?拨,Cؓb2Q其余第3拨,Cؓb3Q?
W二步:b1和b2攑ֈ天^两盘上,记左盘ؓc1Q右为c2Q这时候分两中情况Q?

1.c1和c2qQ此时可以确定从a1到a8都是常球Q然后把c2拿空Qƈ从c1上拿下a4Q从a9到a12四球里随便取三球Q假设ؓa9到a11Q放到c2上。此时c1上是a1到a3Qc2上是a9到a11。从q里又分三种情况Q?
     AQ天q_^衡,很简单,说明没有放上ȝa12是异球Q而到此步一q了两ơ,所以将a12随便?1个常球再UCơ,也就是第三次Q马上就可以定a12是重q是轻;
     BQ? 若c1上升Q则q次U说明异球ؓa9到a11三球中的一个,而且是比常球重。取下c1所有的球,q将a8攑ֈc1上,a9取下Q比较a8和a11Q第? ơ称Q,如果q则说明从c2上取下的a9是偏重异球,如果不^衡,则偏向哪盘则哪盘里放的就是偏重异球;
     CQ若c1下降Q说明a9到a11里有一个是偏轻异球。次U情况和BcMQ所以接下来的步骤照搬B是Q?

2.c1和c2不^衡,q时候又分两U情况,c1上升和c1下降Q但是不哪U情况都能说明a9到a12是常球。这步是解题的关键。也是这个题最妙的地方?
     AQc1上升Q此时不能判断异球在哪盘也不能判断是轻还是重。取下c1中的a2到a4三球放一边,c2中的a5和a6攑ֈc1上,然后常球a9攑ֈc2上。至此,c1上是a1Qa5和a6Qc2上是a7Qa8和a9。此时又分三中情况:
         1Q? 如果qQ说明天q上所有的球都是常球,异球在从c1上取下a2到a4中。而且可以断定异球轻重。因为a5到a8都是常球Q而第2ơ称的时候c1是上? 的,所以a2到a4里必然有一个轻球。那么第三次U就用来从a2到a4中找到轻球。这很简单,随便拿两球放到c1和c2Q^衡则剩余的ؓ要找球,不^衡则 哪边低则哪个扄Q?
         2Qc1仍然保持上升Q则说明要么a1是要扄ȝQ要么a7和a8两球中有一个是重球Q这步懂吧? 好好xQ很单的。因为a9是常球,而取下的a2到a4肯定也是常球Q还可以推出换盘攄的a5和a6也是常球。所以要么a1轻,要么a7或a8重)? xQ还剩一ơ称的机会。只需把a7和a8放上两盘Q^衡则说明a1是要扄偏轻异球Q如果不qQ则哪边高说明哪个是偏重异球Q?
         3Q如果换球称W?ơ后天^q打破Qƈ且c1降低了,q说明异球肯定在换过来的a5和a6两求中,q且异球偏重Q否则天q么^衡要么保持c1上升。确定要扄是偏重之后,a5和a6攑ֈ两盘上称W?ơ根据哪辚w可以判定a5和a6哪个是重球;
     BQ? W?ơ称后c1是下降的Q此时可以将c1看成c2Q其实以后的步骤都同AQ所以就不必要再重复叙述了。至此,不管情况如何Q用且只用三ơ就能称?2个外 观手感一模一L球中有质量不同于其?1球的偏常的球。而且在称的过E中可以判定其是偏轻q是偏重?

3.U2 合唱团在17 分钟内得赶到演唱会场Q途中必需跨过一座桥Q四个h从桥的同一端出发,你得帮助他们到达另一端,天色很暗Q而他们只有一只手늭。一ơ同时最多可以有两h 一赯桥,而过桥的时候必L有手늭Q所以就得有人把手电{带来带去,来回桥两端。手늭是不能用丢的方式来传递的。四个h的步行速度各不同,若两人同 行则以较慢者的速度为准。Bono 需? 分钟q桥QEdge 需? 分钟q桥QAdam需?5 分钟q桥QLarry 需?0 分钟q桥。他们要如何?7 分钟内过桥呢Q(有个同济的学生写文章说他当时在微软面试时是到了这道题Q最短只能做出在19分钟内过桥,微Y的h对他讲这Ll果已经是不错的 了!Q?nbsp;
  A点到 B ?
 1 ? q去 2 分钟 2 
 2 q来 4 分钟 2+2=4
10?5q去 14 分钟 4+10=14  
1 q来 15 分钟 14+1=15  
1 ? q去 17 分钟 15+2=17

W一l?nbsp; 
  1.烧一根不均匀的Q从头烧到尾d需?个小时。现在有若干条材质相同的l_Q问如何用烧l的Ҏ来计时一个小时十五分钟呢?
       ans:三根lI开始的时候,W一根点燃两端,W二根点燃一端,W三根不?/font>?font color="#ff0000">W一根烧完(30分钟)后,点燃W二根的另一?/font>Q第二根只要15分钟可以烧完了Q第二根l烧?45分钟)后,点燃W三根子两端,W三根烧完(1时15?后,计时完成

  2.你有一桶果冻,其中有黄艌Ӏ绿艌Ӏ红色三U,闭上眼睛抓取同种颜色的两个。抓取多个可以确定你肯定有两个同一颜色的果?

  3.如果你有无穷多的_一?公升的提捅,一?公升的提捅,两只提捅形状上下都不均匀Q问你如何才能准称?公升的水?

  4.一个岔路口分别通向诚实国和说谎国。来了两个hQ已知一个是诚实国的Q另一个是说谎国的。诚实国永远说实话,说谎国永q说谎话。现在你要去说谎国,但不知道应该走哪条\Q需要问q两个h。请问应该怎么?

  5.12个球一个天qI现知道只有一个和其它的重量不同,问怎样U才能用三次找到那个球?3个呢?(注意此题q未说明那个球的重量是轻是重Q所以需要仔l考虑)

  6.?个点上画10条直U,要求每条直线上至有三个?

  7.在一天的24时之中Q时钟的旉、分针和U针完全重合在一L时候有几次?都分别是什么时?你怎样出来的?

  8.怎么L?|木,使其中Q意两|的距ȝ{?

  W二l?nbsp; 

  1.Z么下水道的盖子是圆的?

  2.中国有多辆汽R?

  3.汽车钥匙插入R门,向哪个方向旋转就可以打开车锁?

  4.如果你要L中国?4个省(含自d、直辖市和港澳特区及台湾?中的M一个,你会L哪一个,Z?

  5.多少个加油站才能满中国的所有汽?

  6.惌你站在镜子前Q请问,Z么镜子中的媄象可以颠倒左叻I却不能颠倒上?

  7.Z么在M旅馆里,你打开热水Q热水都会瞬间倾泻而出?

  8.你怎样Excel的用法解释给你的奶奶?

  9.你怎样重新改进和设计一个ATM银行自动取款?

  10.如果你不得不重新学习一U新的计机语言Q你打算怎样着手来开?

  11.如果你的生规划中打在5q内受到奖励Q那获取该项奖励的动机是什?观众是谁?

  12.如果微Y告诉你,我们打算投资五百万美元来启动你的投资计划Q你开始什么样商业计划?Z?

  13.如果你能够将全世界的电脑厂商集合在一个办公室里,然后告诉他们被做一件事Q那件事是什? 

 

W三l?nbsp; 

  1.你让工hZ工作7天,回报是一栚w条,q个金条q_成相q的7D,你必d每天l束的时候给他们一D金条。如果只允许你两ơ把金条弄断Q你如何l你的工Z?

2.有一辆火车以每小?5公里的速度d北京直奔q州Q同时另一辆火车每时20公里的速度从广州开往北京。如果有一只鸟Q以30公里每小时的速度? 两辆火R同时启动Q从北京出发Q碰到另一辆R后就向相反的方向q回去飞Q就q样依次在两辆火车之间来回地飞,直到两辆火R盔R。请问,q只鸟共飞行了多? 的距?

  3.你有四个装药丸的|子Q每个药且R有一定的重量Q被污染的药丸是没被污染的药丸的重量+1。只U量一ơ,如何判断哪个|子的药被污染了?

  4.门外三个开兛_别对应室内三盏灯Q线路良好,在门外控制开x候不能看到室内灯的情况,现在只允许进门一ơ,定开兛_灯的对应关系?

  5.人民币ؓ什么只????0的面?

  6.你有两个|子以及50个红色弹球和50个蓝色弹球,随机选出一个罐子, 随机选出一个弹球放入罐子,怎么l出U色弹球最大的选中Z?在你的计划里Q得到红球的几率是多?

  7.l你两颗6面色子,可以在它们各个面上刻?-9L一个数字,要求能够用它们拼ZQ意一q中的日期数?br>
  W四l?nbsp;

  W一?nbsp;. 五个L抢到?00颗宝矻I每一颗都一样大和价D城。他们决定这么分Q?br>
  抽签军_自己的号?1????)

  首先Q由1h出分配方案,然后大家表决Q当且仅当超q半数的人同意时Q按照他的方?br>
  q行分配Q否则将被扔q大喂鲨鱼

  如果1h后,再由2h出分配方案,然后剩下?行表冻I当且仅当过半数的h?br>
  意时Q按照他的方案进行分配,否则被扔入大v喂鲨?br>
  依此cL

  条gQ每个v盗都是很聪明的hQ都能很理智地做出判断,从而做出选择?br>
  问题Q第一个v盗提出怎样的分配方案才能自己的收益最大化?

  W二?nbsp;. 一道关于飞机加油的问题Q已知:

  每个飞机只有一个a,

  飞机之间可以怺加a(注意是相互,没有加a?

  一a可供一枉机绕地球飞半圈,

  问题Q?br>
  Z臛_一枉机绕地球一圈回到v飞时的飞机场Q至需要出动几枉?(所有飞Z同一机场起飞Q而且必须安全q回机场Q不允许中途降落,中间没有飞机?W三? 汽R加a问题  

  一辆蝲?00升的汽R从A开往1000公里外的BQ已知汽车每公里耗a量ؓ1升,A处有无穷多的油,其他M地点都没有aQ但该R可以在Q何地点存放a以备中{Q问从A到B最需要多a

  W四? h问题

  一U杯子,若在WN层被摔破Q则在Q何比N高的楼层均会_若在WM层不_则在M比M低的楼层均会_l你两个q样的杯子,让你?00层高的楼层中试Q要求用最的试ơ数扑և恰y会杯子破碎的楼层?br>
  W五? 推理游戏

  教授选出两个??的数Q把它们的和告诉学生Ԍ把它们的U告诉学生乙Q让他们轮流猜这两个?br>
  甲说Q?#8220;我猜不出”

  乙说Q?#8220;我猜不出”

  甲说Q?#8220;我猜C”

  乙说Q?#8220;我也猜到?#8221;

  问这两个数是多少

  W六? 病狗问题

一个住宅区内有100户hӞ每户人家M条狗Q每天傍晚大安在同一个地斚w狗。已知这些狗中有一部分病狗Q由于某U原因,狗的Mh无法判断自己的狗 是否是病狗,却能够分辨其他的狗是否有病,现在Q上U传来通知Q要求住户处册些病狗,q且不允许指认他人的狗是病狗(是只能判断自己?Q过?天之 后,所有的病狗都被处决了,问,一共有几只病狗?Z?

  W八? 监狱里有100个房_每个戉K内有一囚犯。一天,监狱长说Q你 们狱房外有一늁Q你们在N时可以控制这个电?熄或?。每天只能有一个h出来NQƈ且防风是随机的。如果在有限旉内,你们中的某h能对我说Q? “我敢保证Q现在每个h都已l至放q一ơ风了?#8221;我就放了你们!问囚犯们要采取什么策略才能被监狱长放?如果采用了这U策略,大致多久他们可以被释 ?

 

W五l?nbsp; 

  1.某手机厂家由于设计失误,有可能造成甉|寿命比原来设计的寿命短一?不是冲放甉|?Q解x案就是免Ҏ换电池或l?0元购买该厂家新手机的折换券。请l所有已购买的用户写信告诉解x案?br>
  2.一高层领导在参观某博物馆时Q向博物馆馆员小王要了一块明代的城砖作ؓU念Q按国家规定QQ何h不得博物馆收藏品变为私有。博物馆馆长需要如何写信给q位领导Q将城砖取回?br>
  3.营业员小姐由于工作失误,?万元的笔记本电脑?.2万元错卖l李先生Q王姐的经理怎么写信l李先生试图钱要回?

  4.l你一ƾ新研制的手机,如果你是试l的l长Q你会如何测?

  5.如何为函数int atoi(const char * pstr)~写试向量?

  W六l?nbsp; 

  1.链表和数l的区别在哪?

  2.~写实现链表排序的一U算法。说明ؓ什么你会选择用这LҎ?

  3.~写实现数组排序的一U算法。说明ؓ什么你会选择用这LҎ?

  4.L写能直接实现char * strcpy(char * pstrDest,const char * pstrSource)函数功能的代码?br>
  5.~写反{字符串的E序Q要求优化速度、优化空间?br>
  6.在链表里如何发现循环链接?

  7.l出z牌的一个算法,q将z好的牌存储在一个整形数l里?br>
  8.写一个函敎ͼ查字W是否是整数Q如果是Q返回其整数倹{?或者:怎样只用4行代?br>
  9.l出一个函数来输出一个字W串的所有排列?br>
  10.L写实现void * malloc(int)内存分配函数功能一L代码?br>
  11.l出一个函数来复制两个字符串A和B。字W串A的后几个字节和字W串B的前几个字节重叠?br>
  12.怎样~写一个程序,把一个有序整数数l放C叉树?

  13.怎样从顶部开始逐层打印二叉树结Ҏ?LE?br>
  14.怎样把一个链表掉个顺?也就是反序,注意链表的边界条件ƈ考虑I链?? --

  15.L写能直接实现int atoi(const char * pstr)函数功能的代?br>
-----------------------------------------------------------------------------------
W一l题{案Q?nbsp;

  
  2)Ҏ抽屉原理Q??br>
  3)3升装?3???全注?;3升装?3?????;5升倒掉;3???注入1?;3升装?3???完成(另:可用回溯法编E求?

  4)问其中一人:另外一个h会说哪一条\是通往诚实国的?回答者所指的那条路必然是通往说谎国的?br>
  5)12个球Q?br>
  W一ơ:4Q? 如果q了Q?br>
  那么剩下的球中取3攑ַ??个好球放双Q称Q?br>
  如果左边重,那么取两个球UC下,哪个重哪个是ơ品Q^的话W三个重Q是ơ品Q轻的话同理

  如果q了Q那么剩下一个次品,q可Ҏ需要称出次品比正品L者重

  如果不^Q?br>
  那么不妨讑ַ辚w双轻,Z便于说明Q将左边4颗称为重球,双4颗称球,剩下4颗称为好?br>
  取重?颗,ȝ2颗放在左侧,右侧?颗好球和一颗轻?br>
  如果左边?br>
  U那两颗重球Q重的一个次品,q的话右边轻球次?br>
  如果双?br>
  U左边两颗轻球,ȝ一个次?br>
  如果q?br>
  U剩下两颗重球,重的一个次品,q的话剩下那颗轻球次?br>
  13个球Q?br>
  W一ơ:4Q?Q如果^?br>
  ?颗球用上面的Ҏ仍旧能找出次品,只是不能知道ơ品是重是轻

  如果不^Q同上 

6)  

  o o o

  o o o

  o o o

  7)

  23ơ,因ؓ分针要{24圈,旉才能?圈,而分针和旉重合两次之间的间隔显?gt;1时Q它们有23ơ重合机会,每次重合中秒针有一ơ重合机会,所以是23?br>
  重合旉可以对照手表求出Q也可列方程求出

  8)

  在地球表面种树,做一个地球内接的正四面体Q内接点即ؓ所?br>
  W二l?nbsp;无标准答?nbsp; 

  W三l?nbsp;

  1. 分成1,2,4三段Q第一天给1Q第二天l?取回1Q第3天给1Q第4天给4取回1?Q第5天给1Q第6天给2取回1Q第七天l?

  2. 求出火R盔R旉Q鸟速乘以时间就是鸟飞行的距?br>
  3. 四个|子中分别取1,2,3,4颗药丸,U出比正帔R多少Q即可判断出那个|子的药被污?br>
  4. 三个开兛_别:养I开Q开10分钟Q然后进屋,暗且凉的为开?控制的灯Q亮的ؓ开?控制的灯Q暗且热的ؓ开?控制的灯

  5. 因ؓ可以?Q?Q?Q?0l合成Q何需要的货币|日常习惯?0q制

  6. 题意不理?..*_*

  7. 012345 0126(9)78

  W四l?nbsp;都是很难的题?nbsp; 

  W一题:97 0 1 2 0 或?nbsp;97 0 1 0 2 (提示Q可用逆推法求?

  W二题:3枉?架次Q飞法:

ABC 3架同时v飞,1/8处,ClAB加满油,Cq航Q?/4处,BlA加满油,Bq航QA到达1/2处,C从机场往另一方向起飞Q?/4处,C? 已经IaqAq_剩余沚wQ同时B从机v飞,AC?/8处同Bq_剩余沚wQ刚?枉机同时返航。所以是3枉?架次。第三题Q需要徏立数学模 ?nbsp; 

  (提示Q严D明该模型最优比较麻烦,但确实可证,大胆猜想是解题关?

  题目可归lؓ求数?nbsp;an=500/(2n+1) n=0,1,2,3......的和Sn什么时候大于等?000,解得n>6

  当n=6ӞS6=977.57

  所以第一个中转点v始位|距Mؓ1000-977.57=22.43公里

  所以第一ơ中转之前共耗a 22.43*(2*7+1)=336.50?br>
  此后每次中{耗a500?br>
  所以总耗a量ؓ7*500+336.50=3836.50?br>
  W四题:需要徏立数学模?br>
  题目可归lؓ求自然数列的和S什么时候大于等?00Q解得n>13

  W一个杯子可能的投掷楼层分别为:14Q?7Q?9Q?0Q?0Q?9Q?7Q?4Q?0Q?5Q?9Q?00

  W五题:3?(可严D?

  设两个数为n1Qn2Qn1>=n2Q甲听到的数为n=n1+n2Q乙听到的数为m=n1*n2

  证明n1=3Qn2=4是唯一?br>
  证明Q要证以上命题ؓ真,不妨先证n=7

  1)必要性:

  i) n>5 是显然的Q因为n<4不可能,n=4或者n=5甲都不可能回{不知道

  ii) n>6 因ؓ如果n=6的话Q那么甲虽然不知?不确?+4q是3+3)但是无论?Q?q是3Q?乙都不可能说不知?m=8或者m=9的话乙说不知道是没有道理?

iii) n<8 因ؓ如果n>=8的话Q就可以n分解?nbsp;n=4+x ?nbsp;n=6+(x-2)Q那么m可以?x也可以是6(x-2) ?x=6(x-2)的必要条件是x=6即n=10Q那样n又可以分解成8+2Q所以M当n>=8Ӟn臛_可以分解成两U不同的合数之和Q这? 乙说不知道的时候,甲就没有理由马上说知道?br>
  以上证明了必要?br>
  2)充分?br>
  当n=7Ӟn可以分解?+5?+4

  昄2+5不符合题意,舍去Q容易判断出3+4W合题意Qm=12Q证?br>
  于是得到n=7 m=12 n1=3 n2=4是唯一解。第六题Q??数学归纳法证?  

  1)若只?只病狗,因ؓ病狗Mh看不到有其他病狗Q必然会知道自己的狗是病?前提是一定存在病?Q所以他会在W一天把病狗处决?br>
  2)设有k只病狗的话,会在Wk天被处决Q那么,如果有k+1只,病狗的主人只会看到k只病狗,而第k天没有h处决病狗Q病狗主人就会在Wk+1天知道自q狗是病狗Q于是病狗在Wk+1天被处决

  3)?)2)得,若有n只病狗,必然在第n天被处决

  W八题:

  U定好一个h作ؓ报告?可以是第一个放风的?

  规则如下Q?br>
  1、报告hN的时候开灯ƈ数开灯次?br>
  2、其他hW一ơ遇到开着灯放风时Q将灯关?br>
  3、当报告人第100ơ开灯的时候,d监狱长报告,要求监狱长放?.....

  按照概率大约30q后(10000?他们可以被释?br>
  W五l无标准{案  

  W六l部分题参考答案:  

  4.

char * strcpy(char * pstrDest,const char * pstrSource)
{
 assert((pstrDest!=NULL)&&(pstrSource!=NULL)); 
 char * pstr=pstrDest;
 while((*(pstrDest++)=*(pstrSource++))!='\0');
        return pstr;
}
 


  5.

char * strrev(char * pstr)
{
 assert(pstr!=NULL);
 
 char * p=pstr;
 char * pret=pstr;
 while(*(p++)!='\0');
 p--;
 char tmp;
 while(p>pstr)
 {
  tmp=*p;
  *(p--)=*(pstr);
  *(pstr++)=tmp;  
 }
 return pret;

癑ֺW试题:
IPD|?ip1 ip2。之间以I格分开Qip形式为X.X.X.XQ数据保存在文g中,文g不超q?k行,无序。现在要求编写算法去掉可重IPQ可重有三种形式Q包含、交叠、紧靠?

例如Q文件内容ؓQ?
10.0.0.0 10.0.0.12
10.0.0.5 10.0.0.10    ( <= 包含)
10.0.0.8 10.0.0.15    ( <= 交叠)
10.0.0.15 10.0.0.24   ( <= 紧靠)

最后输Zؓ:
10.0.0.0 10.0.0.24

codeQ?br>/*
**q个函数的作用是文件中的一行对应的两个数据转换成整形的数据
**比如?0.0.0.0 10.0.0.12 转换后,left=10*224,是10.0.0.0对应的整敎ͼ每个数字对应8位,right=left+12
*/
void ParseLine( char line[], size_t length, unsigned int &left, unsigned int &right)
{
    size_t i;
    for( i=0; i<length; i++ )
    {
        if ( line[i]=='.' || line[i]==' ' )//点变成0
        {
            line[i]=0;
        }
    }
    char *p   = (char*)&left;
    char *num = line;
    for( i=3; i<4; --i ) //size是size_tQ而size_t是unsigned intQ所以i=0再自减后变成了最大的整数Q@环就会终?br>    {
 // cout<<i<<",";
        *(p+i) = strtol( num, &num  ,10 );
        cout<<static_cast<int>(*(p+i))<<",";
        ++num;
 // cout<<num<<":";
    }
    cout<<endl;
    p = (char*)&right;
    for( i=3; i<4; --i )
    {
        *(p+i) = strtol( num, &num, 10 );
        ++num;
    }
}


void UniqueSequence(  vector<unsigned int> & uSeq, unsigned int left, unsigned int right )
{
    size_t i, lPos=-1, rPos=-1;
    for( i=0; i<uSeq.size(); i++ )
    {
        if( left <= uSeq.at(i)  )
        {
            lPos = i;
            break;
        }
    }
    for( ;i<uSeq.size(); i++ )
    {
        if( right<=uSeq.at(i) )
        {
            rPos=i;
            break;
        }
    }
    if( lPos == -1 )
    {
        uSeq.push_back( left );
        uSeq.push_back( right );   
        return;
    }

    if( lPos%2 == 0 )
    {
        if(  uSeq.at(lPos)==left )
        {   
        }
  else
        {
            uSeq.insert( uSeq.begin()+lPos, left );
        }
    }
 else
    {
        --lPos;
    }
    if( rPos == -1 )
    {
        uSeq.erase( uSeq.begin()+(lPos+1), uSeq.end() );
        uSeq.push_back(right);
    }
 else if(  rPos%2 == 0  )
    {
        if( uSeq.at(rPos)== right )
        {
            uSeq.erase( uSeq.begin()+(lPos+1), uSeq.begin()+(rPos+1) );
        }
  else
        {
            uSeq.erase( uSeq.begin()+(lPos+1), uSeq.begin()+rPos );
            uSeq.insert( uSeq.begin()+rPos, right  );
        }
    }
 else
    {
        uSeq.erase( uSeq.begin()+(lPos+1), uSeq.begin()+rPos );
    }
}


void PrintIP( unsigned int num )
{
    char *p = (char*)&num;
    for( size_t i=3;i>0; --i)
    {
        cout<< (int)p[i]<<".";
    }
    cout<<(int)p[0];
}

#define MAX_BUFFER_LENGTH 100
int main()
{
    unsigned int left, right;
    char buffer[MAX_BUFFER_LENGTH];
    ifstream infile( "test.txt" );
    if( infile.fail() )
    {
        return 0;
    }
    vector<unsigned int> uSeq;
    while( infile.getline(buffer, MAX_BUFFER_LENGTH) )
    {
        ParseLine(buffer, strlen(buffer), left, right);
 // cout<<left<<","<<right<<endl;
        UniqueSequence( uSeq, left, right );
  for( size_t i=0; i<uSeq.size(); i+=2 )
    {
        PrintIP(uSeq.at(i) );
        cout<<"  ";
        PrintIP(uSeq.at(i+1));
        cout<<endl;
    }
  cout<<endl;
    }
    for( size_t i=0; i<uSeq.size(); i+=2 )
    {
        PrintIP(uSeq.at(i) );
        cout<<"  ";
        PrintIP(uSeq.at(i+1));
        cout<<endl;
    }
    return 0;
}

/*long strtol( const char *nptr, char **endptr, int base ),其中nptr是以NULLl尾字符Ԍendptr是字W串停止扫描的地方(Pointer to character that stops scanQ,strtol returns the value represented in the string nptrQThe strtol function converts nptr to a long. strtol stops reading the string nptr at the first character it cannot recognize as part of a number. This may be the terminating null character, or it may be the first numeric character greater than or equal to base.
string = "-10110134932This stopped it";
  l = strtol( string, &stopstring, 10 );
  printf( "string = %s", string );
  printf("   strtol = %ld", l );
  printf("   Stopped scan at: %s", stopstring );
  string = "10110134932";
  printf( "string = %s\n", string );
  /* Convert string using base 2, 4, and 8: */
  for( base = 2; base <= 8; base *= 2 )
  {
     /* Convert the string: */
     ul = strtoul( string, &stopstring, base );
     printf( "   strtol = %ld (base %d)\n", ul, base );
     printf( "   Stopped scan at: %s\n", stopstring );
  }
打印的结果是Q?br>string = -10110134932This stopped it   strtol = -2147483647   Stopped scan at: This stopped itstring = 10110134932
  strtol = 45 (base 2)
  Stopped scan at: 34932
  strtol = 4423 (base 4)
  Stopped scan at: 4932
  strtol = 2134108 (base 8)
  Stopped scan at: 932
*/

5.如果存在两个变量Qa和bQ不使用“if”?#8220;?:”?“switch”和其它的判断语句Q找Z个数中的最大倹{?br>      {案Q? ( a + b ) + abs( a - b ) ) / 2

6. 写一个函数找Z个整数数l中Q第二大的数 QmicrosoftQ?br>       const int MINNUMBER = -32767 ;
       int find_sec_max( int data[] , int count)
       {
                int maxnumber = data[0] ;
                int sec_max = MINNUMBER ;
                for ( int i = 1 ; i < count ; i++)
                {
                    if ( data[i] > maxnumber )
                    {
                         sec_max = maxnumber ;
                         maxnumber = data[i] ;
                    }
                    else
                    {
                             if ( data[i] > sec_max )
                                     sec_max = data[i] ;
                    }
                }
                return sec_max ;
        }



周强 2011-03-02 12:19 发表评论
]]>
q雷面试题(转蝲Q?/title><link>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140968.html</link><dc:creator>周强</dc:creator><author>周强</author><pubDate>Wed, 02 Mar 2011 04:18:00 GMT</pubDate><guid>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140968.html</guid><wfw:comment>http://www.shnenglu.com/tankzhouqiang/comments/140968.html</wfw:comment><comments>http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140968.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/tankzhouqiang/comments/commentRss/140968.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/tankzhouqiang/services/trackbacks/140968.html</trackback:ping><description><![CDATA[<p><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>1.下列E序的输出结果ؓQ?B)<br>#include<iostream.h><br>void main()<br>{<br>       char* a[ ] = { "hello", "the", "world"};<br>       char** pa = a;<br>       pa++;<br>       cout<<”*pa<<endl;<br>}<br>A) theworld    B) the   C) ello    D) ellotheworld<br> <br>2. 已知二叉树后序遍历序列是bfegcdaQ中序遍历序列是badefcgQ它的前序遍历序列是Q?B)<br>A) abcdefg     B) abdcefg    C) adbcfeg    D) abecdfg<br> <br>3. 栈和队列的共同特ҎQ?C)<br>A) 都是先进先出                 B) 都是先进后出<br>C) 只允许在短点处插入和删除元素 D) 没有共同?br> <br>4. 下面E序的运行结果ؓQ?A)<br>#include <iostream.h><br>void main()<br>{<br>       int a, x;<br>       for(a = 0, x = 0; a<=1 && !x++; a++)<br>       {<br>              a++;<br>       }<br>       cout<< a << x <<endl;<br>}<br>A) 21             B) 22             C) 32             D) 41<br> <br>5. 下列选项Q不正确的是Q?B) while后没有分?br> A) for(int a=1; a<=10; a++);<br>B) int a=1;<br>   do<br>   {<br>              a++;<br>   }while(a<=10)<br>C) int a=1;<br>   while(a<=10)<br>   {<br>          a++;<br>}<br>D) for(int a= 1; a<=10; a++)a++;<br>6. 下面关于数组的初始化正确的是Q?B)<br>A) char str[2] = {“a”,”b”};<br>B) char str[2][3]={“a”,”b”};<br>C) char str[2][3]={{‘a’,’b’},{‘e’,’d’},{‘e’,’f’}};<br>D) char str[] = {“a”, “b”};<br>  </font></font></font></font></font></font></font></font></font></font></p> <font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font><font size="3"><font>7. 下列说法正确的是Q?B)<br>A) 内联函数在运行时是将该函数的目标代码插入每个调用该函数的地方<br>B) 内联函数在编译时是将该函数的目标代码插入每个调用该函数的地方<br>C) cȝ内联函数必须在类体内定义<br>D) cȝ内联函数必须在类体外通过关键字inline定义<br> <br>8Q下面对静态成员的描述中,正确的是Q?D)<br>A) 静态数据成员可以在cM内初始化<br>B) 静态数据成员不可以被类的对象调?br>C) 静态数据成员不能受private控制W的作用<br>D) 静态数据成员可以直接用cd调用<br> <br>9. 下列q算W中Q在C++语言中不能重载的是:(C)<br>A) *                B) >=             C) ::              D) delete<br> <br>10 下面关于多态性的描述Q错误的是:(C)<br>A) C++语言的多态性分为编译时的多态性和q行时的多态?br>B) ~译时的多态性可通过函数重蝲实现<br>C) q行时的多态性可通过模板和虚函数实现 //模板的是~译时多态性,而虚函数是运行时<br>D) 实现q行时多态性的机制UCؓ动态绑?br> <br>11. 如果q栈序列为e1,e2,e3,e4,e5,则可能的出栈序列是:(D)<br>A) e3,e2,e5,e4,e1<br>B) e2,e3,e5,e4,e1<br>C)    e3,e2,e4,e5,e1<br>D) 以上都有可能<br> <br>12 下面关于cd对象的描qCQ错误的是:(A)<br>A) cd是C语言中的l构体类型,对象是C语言中的l构体变?br>B) cd对象之间的关pL抽象和具体的关系<br>C) 对象是类的实例,一个对象必d于一个已知的c?br>D) cLh共同行ؓ的若q对象的l一描述?br> <br>13.下面关于数组的描q错误的是:QDQ?br>A) 在C++语言中数l的名字是指向该数l第一个元素的指针<br>B) 长度为n的数l,下标的范围是0Qn-1<br>C) 数组的大必d~译是确?br>D) 数组只能通过值参数和引用参数两种方式传递给函数<br>注释Q?br>在把数组作ؓ参数传递给函数Ӟ有g?by value)和地址传?by reference)两种方式?<br>    在g递方式中Q要在数l参数的N加上一Ҏ括号([])Q调用函数时只需数l的地址(xl名)传递给函数?<br>    例如Q如果数lx被声明ؓQint x[10]; <br>    那麽函数被说明ؓQvoid byval_func(int[]); <br>    参数int[]告诉~译E序byval_func()函数只有一个参?即一个由int型值组成的数组?nbsp;    <br>函数调用时只需数l名传递给函数:byval_func(x);<br>#include <stdio.h> <br> void byval_func(int[]); <br> void main(void); <br> void main(void)<br> {<br>     int x[10];<br>     int y;<br>     for(y=0;y<10;y++)<br>         x[y]=y;<br>     byval_func(x);     <br> } <br> void byal_func(int i[])<br> { <br>     int y;<br>     for(y=0;y<10;y++)<br>        printf("%d\n",i[y]);<br> }<br>? g递方式中,数组x被复制一?复制所得的数组被存放在栈?然后由byval_func()函数接收q打印出来。由g递给 byval_func()函数的是初始数组的一份拷贝,因此在byval_func()函数内部修改传递过来的数组对初始数l没有Q何媄响?<br>    g递方法的开销是很大的Q因为首先它要完整地复制初始数组q将q䆾拯存放到栈中,q将耗费相当可观的运行时_ 因而g递方法效率较低;其次Q初始化数组的拷贝需要占用额外的内存I间Q栈中的内存Q;最后,~译E序需要专门生一部分用来复制初始数组的代码,q将 使程序变大?br>    地址传递方法克服了g递方法的~点。在地址传递方法中Q传递给函数的是指向初始数组的指针,不用复制数组Q因此程序变得简l,也节省了栈中的内存空间。在地址传递过E中,只需在函数原形中函数的参数说明为指向数l元素数据类型的一个指针?br>    例如同样定义一个数lxQint x[10];<br>    那麽函数被说明ؓQint const_funt(const int*);<br>    参数const int*告诉~译E序const_funt()函数只有一个参?x向一个intcd帔R的指针?br>    函数调用时只需数l的地址传递给函数:const_func(x);<br>#include <stdio.h> <br> void const_func(const int*); <br> void main(void); <br> void main(void)<br> {<br>     int x[10];<br>     int y;<br>     for(y=0;y<10;y++)<br>         x[y]=y;<br>     constl_func(x);     <br> } <br> void const_func(const int*i)<br> { <br>     int y;<br>     for(y=0;y<10;y++)<br>        printf("%d\n",*(i+y));<br> }<br> ? g递方式中,没有复制初始数组q将其拷贝存攑֜栈中,const_func()函数只接收到指向一个intcd帔R的指?因此在编写程序时要保证传? lconst_func()函数的是指向一个由intcd帔Rl成的数l的指针。const修饰W的作用是防止意外修改初始数l中的某一个元素?br> <br>14Q?引用标准库时Q下面的说法你认为哪个是正确的:QBQ?br>A) 语句#include “stdlib.h”是正的Q但会媄响程序的执行速度<br>B) 语句#include <stdlib.h>是正的Q而去E序执行速度?include “stdlib.h”要快<br>C) 语句#include <stdlib.h>?include “stdlib.h”都是正确的,E序执行速度没有区别<br>D) 语句#include “stdlib.h”是错误的<br>注释Qinclude   ""是先从本地目录开始寻找,然后d扄l\径,而Include   <>   相反先从pȝ目录Q后从本地目录,<br> <br>15.设a、b、c、d、m、n均ؓint型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>bQ?amp;&(n=c>d)q算后,n的gؓQ(CQ?br>A) 0               B) 1               C) 2               D) 7<br> <br>16Q不能作为重载函数的调用的依据是Q(CQ?br>A) 参数个数                              B) 参数cd<br>C) 函数cd                              D) 函数名称<br> <br>17Q下列程序的输出l果? (D)<br>#include< iostream. h><br>int func(int n)<br>{<br>  if〔n<1)return 1;<br>else return n+func(n-1);<br>return 0;<br>}<br>void main()<br>{<br>cout<<func(5)<<endl;<br>}<br>A) 0        B)10             C)15            D)16<br> <br>18. 建立zcd象时,3U构造函数分别是a(基类的构造函?、b(成员对象的构造函?、c(zcȝ构造函?q?U构造函数的调用序? (A)<br>A)abc                                                                B)acb<br>C)cab                                                                     D)cba<br> <br>19. 如果友元函数重蝲一个运符Ӟ其参数表中没有Q何参数则说明该运符是:QDQ?br>AQ一元运符                                                      BQ二元运符<br>CQ选项AQ和选项BQ都可能                               DQ重载错?br>解析QC++中用友元函数重蝲q算W至有一个参敎ͼ重蝲一目运符要有一个参敎ͼ重蝲二目q算W要有两个参数?br> <br>20. 有以下程序段Q(DQ?<br>#define F(X,Y)   (X)--; (Y)++ (X)*(Y);<br>…<br>int i, a = 3, b = 4;<br>for( i = 0; i<5; i++)   F(a,b)<br>printf(“%d, %d”, a, b);<br>输出l果是:Q)<br>A) 3, 4                                       B) 3, 5<br>C) -2, 5                                     D) -2, 9<br> <br>21. 下列for循环的@环体执行ơ数为:QAQ?br>for(int i(10), j(1); i=j=0; i++, j--)<br>A) 0;       B) 1;       C) 无限;        D)以上都不?br> <br>22. 下面E序的输出结果是QDQ?br>char *p1= “123”, *p2 = “ABC”, strQ?0Q? "xyz";<br>strcpyQstr+2,strcatQp1,p2Q);<br>cout << str;<br>AQxyz123ABC                                                       BQz123ABC<br>CQxy123ABC                                                        DQ出?br> <br>23Q下面函数的执行l果是输出(BQ?br>char str[ ] = “xunlei”;<br>char *p = str;<br>int n = 10;<br>printf(“%d, %d, %d\n”, sizeof(str), sizeof(p), sizeof(n));<br>A) 4, 4, 4                                                 B) 7, 4, 4<br>C) 6, 4, 4                                                 D) 6, 6, 4<br> <br>33. 有下列程序段Q?br>char *p, *q;<br>p = (char*) malloc(sizeof(char) * 20);<br>q = p;<br>scanf(“%s %s”, p, q);<br>printf(“%s %s\n”, p, q);<br>若从键盘输入Qabc defQ?则输出结果是QAQ?br>A) def def                     B) abc def<br>C) abc d                       D) d d<br>解析Qq=p;因此p,q指向的是同一D内?scanf先是把abc写到p指向的空?再把def写到q指向的空?也就是同一D늩?因此abc被def覆盖?<br> <br>34Q现在有以下语句Q?br>struct _THUNDER{<br>       int iVersion;<br>       char cTag;<br>       char cAdv;<br>       int iUser;<br>       char cEnd;<br>}Thunder;<br>int sz = sizeof(Thunder);<br>则执行后Q变量sz的值将得到QDQ?br>A) 11             B) 12             C) 13             D) 16<br> <br>35. 有如下程序段Q?br>void GetMemeory(char* p)<br>?br>              p = (char*) malloc (100);<br>?br>void test()<br>{<br>char *str=NULL;<br>GetMemory(str);<br>strcpy(str,”Thunder”);<br>strcat(str+2, “Downloader”);<br> printf(str);<br>}<br>请问q行Test函数l果是:QDQ?br>A) Thunder Downloader                                 B) under Downloader<br>C) Thunderownloader                                    D) E序崩溃<br>解析Q在函数中给指针分配I间Q实际上是给指针的时变量分配空_函数l束后,q个临时变量也消亡,而str仍然为NULLQ没有ؓ其分配空_此时strcpy()是肯定会出错的?br> <br>36. 函数调用exec((v1,v2), (v3,v4,v5),v6,v7);中,实参的个数是QAQ?br>A) 4               B) 5               C) 6               D) 7              <br> <br>37. p是指向类X的成员m的指针,s是类X的一个对象。现要给m赋|QCQ是正确的?br>A) s.p = 5                                                        B) s->p = 5<br>C) s.*p = 5                                                      D) *s.p = 5<br> <br>38. 函数funQchar* pQ?{ return p;}的返回值是QBQ?br>A)无确切?nbsp;                                             B) 行参p中存攄地址?br>C) 一个时存储单元的地址                   D) 行参p自n的地址?br> <br>39Qa,b均ؓ不等?的整形变量,以下关系式恒成立的是Q(CQ?br>A) a*b/a*b == 1                                 B) a/b*b/a == 1<br>C) a/b*b + a%b == a                          D) a/b*b == a<br> <br>40. 设有如下说明Q?br>       typedef struct ST{ long a; int b; char c[2]; } NEW; <br>则下面叙qC正确的是Q?C)<br>AQ以上的说明形式非法                            BQST是一个结构体cd <br>CQNEW是一个结构体cd                DQNEW是一个结构体变量<br> <br>41. 下列表达式正的是:QCQ?br>A) 9++                  B) Qx+yQ?+              C) c+++c+++c++                D) ++Qa-b--Q?br> <br>42Q在int b[ ][3] = {{1},{3,2},{4,5,6},{0}};中,sizeof(b) = QDQ?br>A) 4                      B) 12                    C) 28                    D) 48<br> <br>43Q以下程序的输出l果是:(D)<br>#define M(x,y,z) x*y+z<br>main()<br>{<br>       int a=1, b=2, c=3;<br>       printf(“%d\n”,M(a+b,b+c,c+a));<br>}<br>AQ?9                   B) 17                    C) 15                    D) 12<br> <br>44Q若有以下定义和语句Q?br>int u=010, v= 0x10, w=10;<br>printf(“%dQ?d,%d\n”,u,v,w);<br>则输出结果是Q?A)<br>A)8,16,10     B)10,10,10      C)8,8,10      D)8,10,10<br> <br>45. 下面E序D늚输出l果是:QBQ?br>int a=5, b=4, c=3, d=2;<br>if(a>b>c)<br>       printf(“%d\n”,d);<br>else if((c-1>=d)==1)<br>       printf(“%d\n”, d+1);<br>else<br>       printf(“%d\n”, d+1);<br>A) 2                      B) 3                      C) 4                   D) ~译错误<br> <br>46Q有如下E序D,请问k的值是Q(DQ?br>enum {a, b=5, c, d=4, e} k; k =c;<br>A) 3                      BQ?                     C) 5                      D) 6<br> <br>47Q有如下E序D:<br>int i, n = 0;<br>double x = 1, y1 = 2.1/1.9, y2 = 1.9/2.1;<br>for( i = 1; i<22; i++)<br>       x = x*y1;<br>while( x!=1.0)<br>{<br>       x =x*y2;<br>       n++;<br>}<br>printf(“%d\n”, n);<br>请问执行l果是:QAQ?br>A) 21                    B) 22                    C)无限循环                  D) E序崩溃<br> <br>48. 用树形结构表C实体之间联pȝ模型是(CQ?br>A) 关系模型                       B) |状模型                C) 层次模型                D)以上三个都是<br> <br>49Q有如下E序D:<br>char fun(char *);<br>main()<br>{<br>       char *s = “one”, a[5] = {0}, (*f1)(char *) = fun, ch;<br>}<br>则对函数fun的调用语句正的是(CQ?br>A) *f1(&a);                  B) f1Q?sQ?                 C) f1(&ch)                   D) ch = *f1(s);要改成(*f1Q?s)才正?br> <br>50Q有如下E序D:<br>int c = 23;<br>printf(“%d\n”, c&c);<br>请问执行l果是:QCQ?br>A) 0               B) 46             C) 23                    D) 以上都不?/font></font></font></font></font></font></font></font></font></font> <img src ="http://www.shnenglu.com/tankzhouqiang/aggbug/140968.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/tankzhouqiang/" target="_blank">周强</a> 2011-03-02 12:18 <a href="http://www.shnenglu.com/tankzhouqiang/archive/2011/03/02/140968.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>лǵվܻԴȤ</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.eiszar86.cn" target="_blank">þþþó˾ƷĻ</a>| <a href="http://www.oftr.cn" target="_blank">ɫʹþۺ</a>| <a href="http://www.cdge.cn" target="_blank">þۺϾþ߾Ʒ</a>| <a href="http://www.uqddn.cn" target="_blank">޾ƷŮþþþ99</a>| <a href="http://www.chefax.cn" target="_blank">þþƷһ</a>| <a href="http://www.tuomao8.cn" target="_blank">ԭۺϾþô˾Ʒ</a>| <a href="http://www.congress-gsc.cn" target="_blank">鶹wwwþùƷ</a>| <a href="http://www.wolfgroup.com.cn" target="_blank">þþƷĻһ</a>| <a href="http://www.hbdmw.cn" target="_blank">ݺɫþ</a>| <a href="http://www.rainbows.net.cn" target="_blank">޾ƷƷþ99 </a>| <a href="http://www.popotang.cn" target="_blank">Ʒþþþá</a>| <a href="http://www.fjprxr.cn" target="_blank">þWWW˳ɡƬ</a>| <a href="http://www.228456.cn" target="_blank">˳˳ۺþþ </a>| <a href="http://www.suba400.cn" target="_blank">91ƷۺϾþĻþһ</a>| <a href="http://www.millions.net.cn" target="_blank">ձƷþþþĻ8</a>| <a href="http://www.mechuo.cn" target="_blank">ĻƷþþþ</a>| <a href="http://www.riyuelitian.cn" target="_blank">ھƷþþþ</a>| <a href="http://www.52maila.cn" target="_blank">þþƷAV㽶</a>| <a href="http://www.disidai.cn" target="_blank">2021þþƷ</a>| <a href="http://www.xhxqbj.cn" target="_blank">99þþƷһ</a>| <a href="http://www.xiaosp4.cn" target="_blank">99þ㽶߿</a>| <a href="http://www.yousms.cn" target="_blank">þseƷһӰԺ</a>| <a href="http://www.yvresse.cn" target="_blank">þþһƷ99þþƷ66</a>| <a href="http://www.reeway.cn" target="_blank">þĻ</a>| <a href="http://www.liuzirui597.cn" target="_blank">һձþþ</a>| <a href="http://www.buniss.cn" target="_blank">þۺۺϾþۺ</a>| <a href="http://www.108bto.cn" target="_blank">þþþAVۿ</a>| <a href="http://www.jbuz.cn" target="_blank">޾ƷƷþ99</a>| <a href="http://www.bolezi333.cn" target="_blank">ܻƺ۵վþmimiɫ</a>| <a href="http://www.musicweb.cn" target="_blank">þþù׾Ʒ</a>| <a href="http://www.hwtk.net.cn" target="_blank">ۺϾþùһ鶹</a>| <a href="http://www.linan521.cn" target="_blank">ɾþۺ777</a>| <a href="http://www.tvauto.cn" target="_blank">þþƷĻ</a>| <a href="http://www.knnnb.cn" target="_blank">þ99Ʒŷ</a>| <a href="http://www.su117q.cn" target="_blank">þĻһ</a>| <a href="http://www.blv5.cn" target="_blank">þþƷ鶹</a>| <a href="http://www.rocchetta.com.cn" target="_blank">þõӰ2021</a>| <a href="http://www.oaaz.cn" target="_blank">ھƷþþþþþ</a>| <a href="http://www.shangzhew.cn" target="_blank">þþþƷҰ</a>| <a href="http://www.tangwoshi.cn" target="_blank">þþþù</a>| <a href="http://www.e9920.cn" target="_blank">þþ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>