Решение задачи "Тетрис" с Codeforces

С пояснением   Просмотров: 12


Происходит следующий процесс.

Есть платформа, состоящая из n колонок. Квадраты размера 1×1 появляются один за другим в некоторых колонках на платформе. Если в колонке нет квадратов, то квадрат появляется в нижнем ряду. Иначе же квадрат появляется сверху от самого высокого квадрата в этой колонке.

Когда в каждой из n колонок есть хотя бы один квадрат, нижний ряд удаляется. За это вы получаете 1 очко, а все остальные квадраты падают на один ряд вниз.

Ваша задача — посчитать количество очков, которое вы получите.

Код

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int n,m;
    cin >> n >> m;
    vector<int> v(n , 0);
    int x = 0;
    for (int i = 0; i < m; i++){
        cin >> x;
        v[x - 1]++;
    }
    sort(v.begin() , v.end());
    cout << v[0];
    return 0;
}

         

 Администратор Photo Автор: Администратор


Ответ будет равен mini=1ncnt[i], где cnt[i] — количество квадратов, которые появятся в i-й колонке.

Отправить решение задачи
Чтобы отправить решение вам нужно войти в систему или зарегистрироваться

Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться