Пожалуйста, подпишитесь на официальный канал Codeforces в Telegram по ссылке https://t.me/codeforces_official. ×

 
 
 
 
Основное
 
 
Отправитель Задача Язык Вердикт Время Память Отослано Протест.  
230099954 Дорешивание:
1v7w
1041C - 18 C++17 (GCC 9-64) Неправильный ответ на тесте 9 93 мс 4912 КБ 2023-10-28 05:39:30 2023-10-28 05:39:30
→ Исходный код
#include <iostream>
#include <algorithm>
#include <queue>
#include <set>
#include <map>
#include <vector>
#include <string>
#include <cstring>
#include <cmath>

#define fi first
#define se second

using namespace std;
using ll = long long;
using pii = pair<int, int>;

const double eps = 1e-4;
const int N = 2e5+10;
ll n, m, d;
int b[N];
vector<pair<ll, ll>> a;

void solve() {
    scanf("%lld%lld%lld", &n, &m, &d);
    for (int i=1; i<=n; i++) {
        ll x; scanf("%lld", &x);
        a.push_back({x, i});
    }
    sort(a.begin(), a.end());
    int res = 0;
    for (int i=0, j=0; i<(int)a.size(); i++) {
        while (j < (int)a.size() && a[j].fi < a[i].fi + d + 1) {
            b[a[j].se] = j - i + 1;
            j++;
        }
        res = max(res, j - i);
        i = j - 1;
    }
    printf("%d\n", res);
    for (int i=1; i<=n; i++) {
        printf("%d%c", b[i], " \n"[i==n]);
    }
}

int main() {
    // multiple case
    // int t; scanf("%d", &t);
    // while(t--) {
    //     solve();
    // }

    // single case
    solve();

    return 0;
}
?
Время: ? ms, память: ? КБ
Вердикт: ?
Ввод
?
Вывод участника
?
Ответ жюри
?
Комментарий чекера
?
Диагностика
?
Показать детали тестирования