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

C語(yǔ)言游戲開(kāi)發(fā)筆試題

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

C語(yǔ)言游戲開(kāi)發(fā)筆試題

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

C語(yǔ)言游戲開(kāi)發(fā)筆試題

  C語(yǔ)言游戲開(kāi)發(fā)筆試題一

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

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

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

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

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

  問(wèn)答題:

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

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

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

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

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

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

  C語(yǔ)言游戲開(kāi)發(fā)筆試題二

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

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

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

  紅桃 A、Q、4

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

  草花 K、Q、5、4、6

  方塊 A、5

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

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

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

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

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

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

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

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

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

  第一題

  題意:給出一個(gè)序列a,需要找到一對(duì)位置(i, j)(j > i),使得a[j] - a[i]的值盡量大,同時(shí)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;

  }

  第二題

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

  題解:可以發(fā)現(xiàn)總分不是很大,可以記憶化搜索。d[i][j]表示當(dāng)拿到的序列為a[i, j]時(shí),從中的最高得分。轉(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語(yǔ)言游戲開(kāi)發(fā)筆試題】相關(guān)文章:

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

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

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

C語(yǔ)言筆試題集錦11-24

外企C語(yǔ)言筆試題11-23

C語(yǔ)言筆試題回憶11-23

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

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

C語(yǔ)言常用筆試題11-23