亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

C語言游戲開發(fā)筆試題

時間:2020-10-14 17:24:16 筆試題目 我要投稿

C語言游戲開發(fā)筆試題

  C語言的設(shè)計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產(chǎn)生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。下面是小編搜集的C語言游戲開發(fā)筆試題,歡迎大家閱讀。

C語言游戲開發(fā)筆試題

  C語言游戲開發(fā)筆試題一

  1、請寫代碼打印100之內(nèi)的素數(shù),講求效率(請做你的解法的效率分析)

  2、求m,n的最大公約數(shù)

  3、輸入10個字符串,打印出其中重復(fù)的字符串以及重復(fù)的次數(shù)

  4、請畫圖例(UML最好),給出windows下的文件目錄的設(shè)計模式

  5、用OO表示狼吃羊羊吃草

  問答題:

  1、什么是subversion?它與vss,cvs的區(qū)別在哪?或者有什么優(yōu)勢?

  2、什么是wiki,關(guān)于程序項目的wiki你使用過哪些?wiki對你有什么幫助嗎?wiki與程序文擋的差別在哪?

  3、什么是tdd?你使用過嗎?tdd的關(guān)鍵在哪?跟傳統(tǒng)的單元測試相比,有什么優(yōu)越性?

  4、什么是單元測試?你用過哪些單元測試工具?他們的區(qū)別和好處各有哪些?你主要傾向于哪一種?

  5、什么是編程規(guī)范?你傾向于什么樣的規(guī)范?他的好處在哪?

  6、什么是mfc?你經(jīng)常使用那些mfc類?那么為什么很多人不主張使用mfc?

  C語言游戲開發(fā)筆試題二

  1、村子中有50個人,每人有一條狗。在這50條狗中有病狗(這種病不會傳染)。于是人們就要找出病狗。每個人可以觀察其他的49條狗,以判斷它們是否生病,只有自己的狗不能看。觀察后得到的結(jié)果不得交流,也不能通知病狗的.主人。主人一旦推算出自己家的是病狗就要槍斃自己的狗,而且每個人只有權(quán)利槍斃自己的狗,沒有權(quán)利打死其他人的狗。第一天,第二天都沒有槍響。到了第三天傳來一陣槍聲,問有幾條病狗,如何推算得出?

  2、P先生、Q先生都具有足夠的推理能力。這天,他們正在接受推理面試。

  他們知道桌子的抽屜里有如下16張撲克牌:

  紅桃 A、Q、4

  黑桃 J、8、4、2、7、3

  草花 K、Q、5、4、6

  方塊 A、5

  約翰教授從這16張牌中挑出一張牌來,并把這張牌的點數(shù)告訴P先生,把這張牌的花色告訴Q先生。

  這時,約翰教授問P先生和Q先生:你們能從已知的點數(shù)或花色中推知這張牌是什么牌嗎?

  P先生:“我不知道這張牌。”

  Q先生:“我知道你不知道這張牌。”

  P先生:“現(xiàn)在我知道這張牌了。”

  Q先生:“我也知道了。”3 樓高100層,你有2個玻璃球,在某一層n層扔下玻璃球會碎,而低于n層則玻璃球不會碎。

  1)你會選擇在第幾層扔第一個玻璃球來得到最少的嘗試次數(shù)?

  2)假如沒有電梯,每次都要上樓下樓,你會選擇第幾層扔第一個玻璃球來得到最短的路程(爬上爬下的樓層)?

  完美世界2017C++游戲開發(fā)筆試編程題

  第一題

  題意:給出一個序列a,需要找到一對位置(i, j)(j > i),使得a[j] - a[i]的值盡量大,同時i盡量大并且j盡量小,如果任意a[j] - a[i]都<=0,則輸出-1,-1。

  題解:從1到n掃一遍序列處理即可,i盡量大用>=,j盡量小用>即可。

  代碼:

  #include

  #include

  using namespace std;

  #define maxn (1000000)

  int a[maxn], prei[maxn];

  int main()

  {

  int n;

  cin >> n;

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

  {

  scanf("%d", &a[i]);

  prei[i] = -1;

  }

  int g = -1;

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

  {

  if(g == -1 || a[i] <= a[g]) g = i;

  if(a[g] < a[i+1]) prei[i+1] = g;

  }

  int d = 0, o = -1;

  for(int i = 1; i < n; i++) if(prei[i] != -1)

  {

  if(a[i] - a[prei[i]] > d)

  {

  d = a[i] - a[prei[i]];

  o = i;

  }

  }

  if(o == -1) cout << -1 << "," << -1 << endl;

  else cout << prei[o] << "," << o << endl;

  return 0;

  }

  第二題

  題意:給出一個序列,玩家需要跟boss進行博弈,玩家先手。每次只能從序列頭或尾取一個值加到自己的得分上,玩家和boss都很聰明,求玩家和boss的最終得分。

  題解:可以發(fā)現(xiàn)總分不是很大,可以記憶化搜索。d[i][j]表示當(dāng)拿到的序列為a[i, j]時,從中的最高得分。轉(zhuǎn)移方程是d[i][j] = max(a[i] + d[i+1][j], d[i][j-1] + a[j]),向下遞歸并且記錄d[i][j]是否已得到即可(應(yīng)該算是區(qū)間dp?)。

  代碼:

  #include

  #include

  using namespace std;

  #define maxn (111)

  int a[maxn], d[maxn][maxn], vis[maxn][maxn], sum;

  void dp(int l, int r, int tot)

  {

  if(vis[l][r]) return ;

  if(l == r) { d[l][r] = a[l]; vis[l][r] = 1; return; }

  dp(l + 1, r, tot - a[l]); dp(l, r - 1, tot - a[r]);

  d[l][r] = max(tot - d[l + 1][r], tot - d[l][r - 1]);

  vis[l][r] = 1;

  }

  int main()

  {

  int N;

  cin >> N;

  for(int i = 1; i <= N; i++)

  {

  scanf("%d", &a[i]);

  sum += a[i];

  }

  dp(1, N, sum);

  cout << d[1][N] << " " << sum - d[1][N] << endl;

  return 0;

  }

【C語言游戲開發(fā)筆試題】相關(guān)文章:

C語言開發(fā)工程師選擇試題11-23

嵌入式開發(fā)—C語言面試題08-17

C語言基礎(chǔ)筆試題11-24

C語言筆試題集錦11-24

外企C語言筆試題11-23

C語言筆試題回憶11-23

C語言筆試題總結(jié)11-23

c語言常見筆試題總結(jié)11-23

C語言常用筆試題11-23