<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. 戰爭電影《抵抗抵抗》觀后感

    時間:2025-11-07 18:08:46 觀后感 我要投稿

    戰爭電影《抵抗抵抗》觀后感

       一、填空題(5分每題,一共8題)

    戰爭電影《抵抗抵抗》觀后感

      1、兩個人A(速度為a)、B(速度為b)在一直路上相向而行。在A、B距離為s的時候,A放出一個鴿子C(速度為c),C飛到B后,立即掉頭飛向A,遇到A在掉頭飛向B......就這樣在AB之間飛來飛去,直到A、B相遇,這期間鴿子共飛行路程為?

      答案是:s*c/(a+b)

      2、(he)的平方=she。h、e、s代表的數字?

      答案是:分別代表2、5、6

      3、運算(93&-8)的結果為:88

      4、將一個無序整數數組構造成一個最大堆,最差時間復雜度為:

      5、int *p = &n;

      那么*p的值是()

      A、p的值 B、p的地址 C、n的值 D、n的地址

      6、一個完全二叉樹有770個節點,那么其葉子的個數為:385

      7、有一個二維數組a[1...100 , 1...65]有100行,65列,我們以行序為主序,如果該數組的基地址是10000,且每個元素占2個存儲單元,請問a[56 , 22]的存儲地址是:17324

      8、以下代碼輸出結果是:

      [cpp] view plaincopyprint?

      class B

      {

      public:

      B()

      {

      cout<<"B constructor\n";

      s = "B";

      }

      void f()

      {

      cout<

      }

      private:

      string s;

      };

      class D : public B

      {

      public:

      D() : B()

      {

      cout<<"D constructor\n";

      s = "D";

      }

      void f()

      {

      cout<

      }

      private:

      string s;

      };

      int main(void)

      {

      B *b = new D();

      b->f();

      ((D*)b)->f();

      delete b;

      return 0;

      }

      class B

      {

      public:

      B()

      {

      cout<<"B constructor\n";

      s = "B";

      }

      void f()

      {

      cout<

      }

      private:

      string s;

      };

      class D : public B

      {

      public:

      D() : B()

      {

      cout<<"D constructor\n";

      s = "D";

      }

      void f()

      {

      cout<

      }

      private:

      string s;

      };

      int main(void)

      {

      B *b = new D();

      b->f();

      ((D*)b)->f();

      delete b;

      return 0;

      }

      輸出結果是

      B constructor

      D constructor

      BD

      二、編程題

      1、數組乘積(15分)

      輸入:一個長度為n的整數數組input

      輸出:一個長度為n的整數數組result,滿足result[i] = input數組中除了input[i]之外所有數的乘積(假設不會溢出)。比如輸入:input = {2,3,4,5},輸出result = {60,40,30,24}

      程序時間和空間復雜度越小越好。

      C/C++:

      int *cal(int* input , int n);

      Java:

      int[] cal(int[] input);

      [cpp] view plaincopyprint?

      int *cal(int* input , int n)

      {

      int i ;

      int *result = new int[n];

      result[0] = 1;

      for(i = 1 ; i < n ; ++i)

      result[i] = result[i-1]*input[i-1];

      result[0] = input[n-1];

      for(i = n-2 ; i > 0 ; --i)

      {

      result[i] *= result[0];

      result[0] *= input[i];

      }

      return result;

      }

      int *cal(int* input , int n)

      {

      int i ;

      int *result = new int[n];

      result[0] = 1;

      for(i = 1 ; i < n ; ++i)

      result[i] = result[i-1]*input[i-1];

      result[0] = input[n-1];

      for(i = n-2 ; i > 0 ; --i)

      {

      result[i] *= result[0];

      result[0] *= input[i];

      }

      return result;

      }

      2、異形數(25分)

      在一個長度為n的整形數組a里,除了三個數字只出現一次外,其他的數字都出現了2次。請寫程序輸出任意一個只出現一次的數字,程序時間和空間復雜度越小越好。

      例如: a = {1,3,7,9,5,9,4,3,6,1,7},輸出4或5或6

      C/C++:

      void find(int* a , int n);

      Java:

      void find(int[] a);

      [cpp] view plaincopyprint?

      /pic/p>

      int lowbit(int x)

      {

      return x&~(x-1);

      }

      void find(int* a , int n)

      {

      int i , xors;

      xors = 0;

      for(i = 0 ; i < n ; ++i)

      xors ^= a[i];

      /pic/p>

      int fips = 0;

      for(i = 0 ; i < n ; ++i)

      fips ^= lowbit(xors ^ a[i]);

      /pic/p>

      int b; /pic/p>

      b = 0;

      for(i = 0 ; i < n ; ++i)

      {

      if(lowbit(xors ^ a[i]) == fips)

      b ^= a[i];

      }

      /pic/p>

      cout<

      }

      /pic/p>

      int lowbit(int x)

      {

      return x&~(x-1);

      }

      void find(int* a , int n)

      {

      int i , xors;

      xors = 0;

      for(i = 0 ; i < n ; ++i)

      xors ^= a[i];

      /pic/p>

      int fips = 0;

      for(i = 0 ; i < n ; ++i)

      fips ^= lowbit(xors ^ a[i]);

      /pic/p>

      int b; /pic/p>

      b = 0;

      for(i = 0 ; i < n ; ++i)

      {

      if(lowbit(xors ^ a[i]) == fips)

      b ^= a[i];

      }

      /pic/p>

      cout<

      }

      3、朋友圈(25分)

      假如已知有n個人和m對好友關系(存于數字r)。如果兩個人是直接或間接的好友(好友的好友的好友...),則認為他們屬于同一個朋友圈,請寫程序求出這n個人里一共有多少個朋友圈。

      假如:n = 5 , m = 3 , r = {{1 , 2} , {2 , 3} , {4 , 5}},表示有5個人,1和2是好友,2和3是好友,4和5是好友,則1、2、3屬于一個朋友圈,4、5屬于另一個朋友圈,結果為2個朋友圈。

      最后請分析所寫代碼的時間、空間復雜度。評分會參考代碼的正確性和效率。

      C/C++:

      int friends(int n , int m , int* r[]);

      Java:

      int friends(int n , int m , int[][] r);

      [cpp] view plaincopyprint?

      /pic/p>

      int set[10001];

      inline int find(int x) /pic/p>

      {

      int i , j , r;

      r = x;

      while(set[r] != r)

      r = set[r];

      i = x;

      while(i != r)

      {

      j = set[i];

      set[i] = r;

      i = j;

      }

      return r;

      }

      inline void merge(int x , int y) /pic/p>

      {

      int t = find(x);

      int h = find(y);

      if(t < h)

      set[h] = t;

      else

      set[t] = h;

      }

      int friends(int n , int m , int* r[])

      {

      int i , count;

      for(i = 1 ; i <= n ; ++i) /pic/p>

      set[i] = i;

      for(i = 0 ; i < m ; ++i)

      merge(r[i][0] , r[i][1]);

      count = 0;

      for(i = 1 ; i <= n ; ++i)

      {

      if(set[i] == i)

      ++count;

      }

      return count;

      }

    【戰爭電影《抵抗抵抗》觀后感】相關文章:

    2016年《抵抗!抵抗!》電影觀后感09-23

    電影我的戰爭的觀后感(精選16篇)12-05

    《我的戰爭》電影觀后感(精選9篇)03-26

    看戰爭電影的觀后感范文(精選15篇)10-10

    戰爭故事電影《誘狼》觀后感(精選16篇)06-02

    觀看電影甲午戰爭觀后感范文07-12

    看電影《我的戰爭》的優秀觀后感800字(精選19篇)01-15

    戰爭電影《南京大屠殺》觀后感(通用13篇)05-18

    戰爭電影《八月一日》觀后感(通用15篇)08-07

    • 相關推薦
    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人