2019網易校招內推筆試題 俄羅斯方塊得分

2021-08-22 19:32:07 字數 1200 閱讀 3012

題目描述:

自定義俄羅斯方塊列數,每次俄羅斯方塊下落個數為1*1,當一行都落滿俄羅斯方塊時,得分+1。現在小明玩到m個俄羅斯方塊,求此時的分數。

輸入:

第一行: 列數, 俄羅斯方塊個數m

第二行 :a(1) a(2) a(3) …a(i)…a(m) 表示第i個俄羅斯方塊落在第a(i)行

輸出:

分數示例:

輸入 3 9

1 1 2 2 2 3 1 2 3

輸出:2

分析:從題目可知,a[i]的取值與列數有關,列數為3,則a[i]的取值只能為1,2,3,一行落滿得一分,求總得分,即求有多少個最小數目的1,2,3組合。若1的個數為3,2的個數為4,3的個數為2,要求每行都有1,2,3才能得一分,因此,總分為2。

所以,用乙個長度為n的陣列儲存1,2,3,分別出現的次數,然後取最小值,即是最後的得分。

//m:列數;n:俄羅斯方塊的個數;

//a:俄羅斯方塊落在第幾列

int score(int m, int n, int a)

score = *min_element(tmp.begin(), tmp.end());

return score;

}

這是筆試結束後寫的**,其實思路理清了,實現起來真的很容易。可一到真正的筆試,腦子就是一團漿糊,ε(┬┬﹏┬┬)3,其實說到底還是基礎不紮實,平時練得又不多。

如下,是筆試時給出的**,雖然也100%通過了,但是……說多了都是淚:

#define max 1000

//n列數,m俄羅斯方塊個數

int getscore(int n, int m, int a)

; for(int i=0; iint x = a[i];

col[x-1].push(a[i]);

}int min = col[0].size();

for(int j=1; jif(min > col[j].size())

min = col[j].size();

}return min;

}int main()

int s = getscore(n,m,x);

cout

return

0;}

2017網易校招內推筆試題

本人筆試的計算機視覺方向,程式設計題和其他研發崗位類似。歡迎小夥伴們一起討論出正確答案。共20個選擇題,3個程式設計題,1個簡答題 1.linux中,提供tcp ip包過濾功能的軟體叫什麼?a.iptables b.route c.rarp d.filter 2.設一組初始關鍵字序列為,則第4趟氣泡...

2019網易校招筆試題 瞌睡

小易覺得高數課太無聊了,決定睡覺。不過他對課上的一些內容挺感興趣,所以希望你在老師講到有趣的部分的時候叫醒他一下。你知道了小易對一堂課每分鐘知識點的感興趣程度,並以分數量化,以及他在這堂課上每分鐘是否會睡著,你可以叫醒他一次,這會使得他在接下來的k分鐘內保持清醒。你需要選擇一種方案最大化小易這堂課聽...

2019網易校招

尺取法滑動視窗 時間複雜度o n 字首和後二分 時間複雜度o mlogn 暴力列舉每團雜物4 4次旋轉 時間複雜度o 256 n 1 include2 include3 include4 using namespace std 56 struct point 1011 point operator ...