제출 #199089

#제출 시각아이디문제언어결과실행 시간메모리
199089virchau13Timovi (COCI18_timovi)C++17
30 / 80
25 ms3064 KiB
#include <iostream>
#include <algorithm>
#include <set>
#include <deque>
#include <queue>
using namespace std;

int main(){
    long long n, k, m, r;
    cin >> n >> k >> m;
    long long arr[n];
    if(n <= 2){
        r = m / (n*k);
        m %= n*k;
        for(int i = 0; i < n; i++){
            arr[i] = (r*k) + min(m,k);
            m -= k;
            m = max(m, 0ll);
        }
        goto leave;
    }
    r = m / ((2*n-1)*k);
    m -= r*k;
    for(int i = 0; i < n; i++){
        arr[i] = (r*(i == 0 || i == n-1 ? k : 2*k) + min(m, k));
        m -= k;
        m = max(m, 0ll);
    }
    for(int i = n-2; i > 0; i--){
        arr[i] += min(m, k);
        m -= k;
        m = max(m, 0ll);
    }
leave:
    for(int i = 0; i < n; i++){
        cout << arr[i] << ' ';
    }
    cout << '\n';
}
#Verdict Execution timeMemoryGrader output
Fetching results...