[編程題]俄羅斯方塊

[編程題]俄羅斯方塊

小易有一個古老的遊戲機,上面有着經典的遊戲俄羅斯方塊。因爲它比較古老,所以規則和一般的俄羅斯方塊不同。
熒幕上一共有 n 列,每次都會有一個 1 x 1 的方塊隨機落下,在同一列中,後落下的方塊會疊在先前的方塊之上,當一整行方塊都被佔滿時,這一行會被消去,並得到1分。
有一天,小易又開了一局遊戲,當玩到第 m 個方塊落下時他覺得太無聊就關掉了,小易希望你告訴他這局遊戲他獲得的分數。

輸入描述:
第一行兩個數 n, m
第二行 m 個數,c1, c2, ... , cm , ci 表示第 i 個方塊落在第幾列
其中 1 <= n, m <= 1000, 1 <= ci <= n

輸出描述:
小易這局遊戲獲得的分數

輸入例子1:
3 9
1 1 2 2 2 3 1 2 3

輸出例子1:
2

思路

找的每列最小值即可,同時要確保每列都有值。

代碼

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main()
{
	int n, m, input;
	cin >> n >> m;
	vector<int> v(n+1);
	for (int i = 0; i < m; ++i) {
		cin >> input;
		v[input]++;
	}
	sort(v.begin(), v.end());
	cout << v[1];
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章