2017網易遊戲雷火盤古實習生招聘筆試真題

2021-07-27 23:59:22 字數 2705 閱讀 9441

1.給定乙個字串,請你將字串重新編碼,將連續的字元替換成「連續出現的個數+字元」。比如字串aaaabccdaa會被編碼成4a1b2c1d2a。

#include

#include

char s[10004];

int main()

tem=s[i];

cot=1;

}else

cot++;

}printf("%d%c",cot,tem);

return

0;}

2.在乙個n*n的陣列中尋找所有橫,豎,左上到右下,右上到左下,四種方向的直線連續d個數字的和裡面最大的值

#includeint a[102][102];

int n, d;

intmax(int a, int b)

int main()

}int ans = -1;

int tem = 0;

//橫for (int i = 1; i <= n; i++)

ans = max(ans, tem);

for (int j = d+1; j <= n; j++)

}//豎

for (int j = 1; j <= n; j++)

ans = max(ans, tem);

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

}//右下-上

for (int i = 1; i <= n - d + 1; i++)

}//右下-左

for (int i = 1; i <= n - d + 1; i++)

}//左下-右

for (int i = 1; i <= n - d + 1; i++)

ans=max(ans,tem);

for (int j = d; i+j <= n; j++)

}//左下-上

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

ans = max(ans, tem);

for (int j = i - d; j >= 1; j--)

}printf("%d\n", ans);

return0;}

/*4 2

87 27 61

10 98 79 70

95 64 73 29

71 65 15 0

*/

3.大家一定玩過「推箱子」這個經典的遊戲。具體規則就是在乙個n*m的地圖上,有1個玩家、1個箱子、1個目的地以及若干障礙,其餘是空地。玩家可以往上下左右4個方向移動,但是不能移動出地圖或者移動到障礙裡去。如果往這個方向移動推到了箱子,箱子也會按這個方向移動一格,當然,箱子也不能被推出地圖或推到障礙裡。當箱子被推到目的地以後,遊戲目標達成。現在告訴你遊戲開始是初始的地圖布局,請你求出玩家最少需要移動多少步才能夠將遊戲目標達成。

這個題目使用bfs即可,將箱子和人的狀態進行標記,避免重複搜尋

#include

#include

#include

#include

using

namespace

std;

struct node

};queue

q;int n, m;

char mp[10][10];

bool vis[10][10][10][10];

int dir[2] = ,,, };

int main()

node cur,tem;

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

else

if (mp[i][j] == '*')

}memset(vis, false, sizeof(vis));

q.push(cur);

int ans = -1;

while (!q.empty())

vis[cur.bx][cur.by][cur.rx][cur.ry] = true;

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

if (mp[tem.rx][tem.ry] != '#' && mp[tem.bx][tem.by] != '#') }}

printf("%d\n", ans);

return

0;}

4.在一條無限長的跑道上,有n匹馬在不同的位置上出發開始賽馬。當開始賽馬比賽後,所有的馬開始以自己的速度一直勻速前進。每匹馬的速度都不一樣,且全部是同樣的均勻隨機分布。在比賽中當某匹馬追上了前面的某匹馬時,被追上的馬就出局。 請問按以上的規則比賽無限長的時間後,賽道上剩餘的馬匹數量的數學期望是多少

馬的速度不同,則一定能由大到小排列。假設是a1>a2>……>an 那麼a1在任何位置都可以存活 a2必須在a1後面才可以存活,因為路是無限長,所以概率是1/2 a3同理需要在a1和a2後面才能活,概率就是1/3 以此類推,期望是: 1+1/2+1/3+…..+1/n

#include 

using

namespace

std;

int main()

printf("%.4f\n", ans);

return

0;}

2017網易遊戲雷火盤古實習生招聘筆試真題 推箱子

2018.3.19 此題我用了廣度優先搜尋 bfs 的方法.廣度優先搜尋不僅僅可以使用在圖的遍歷中,而且可以用於求解複雜問題的最優解。本題就是利用bfs的經典題目,首先來分析這個問題 查詢空間 所有 0,0,0 到點 a 1,b 1,c 1 合法的行走路徑 查詢目標 找到通往出口的最短路徑 查詢方法...

2017網易雷火盤古實習生招聘試題 硬幣反轉

今天聽說cao參加了網易雷火盤古的招聘,做了幾道程式設計題。據他本人的描述,第一道題是這樣的 第一行輸入兩個數字n和m,表示現在有n個硬幣,需要反轉m次。初始所有硬幣都預設為正面,用0表示,反面則用1表示。求經過一系列操作之後的硬幣正反排列。根據cao本人的說法,輸入輸出樣例是這樣的 感覺比較簡單....

2018網易遊戲雷火盤古實習生招聘筆試真題

1.字串編碼 輸入描述 每個測試輸入包含1個測試用例 每個測試用例輸入只有一行字串,字串只包括大寫英文本母,長度不超過10000。輸出描述 輸出編碼後的字串 輸入例子 aaaabccdaa 輸出例子 4a1b2c1d2a 思路分析 這道題好像以前是一家企業的面試題,leetcode easy級別,思...