답안 #823549

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
823549 2023-08-12T17:42:33 Z VMaksimoski008 Nadan (COCI18_nadan) C++14
15 / 50
1 ms 212 KB
#include <bits/stdc++.h>

#define pb push_back
#define eb emplace_back
#define sz(x) (int)x.size()
#define all(x) x.begin(), x.end()
#define uniq(x) x.erase(unique(all(x)), x.end())
#define rall(x) x.rbegin(), x.rend()

using namespace std;

using ll = long long;
using ull = unsigned long long;
using ld = long double;
using pii = pair<int, int>;
using pll = pair<ll, ll>;

const int mod = 1e9 + 7;
const int LOG = 20;
const int maxn = 1e5 + 5;

void setIO() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
}

int32_t main() {
    setIO();

    int k, n, sum = 0;
    cin >> k >> n;
    vector<int> v(n, 0), minus(n, 0);
    for(int i=0; i<n; i++)
        v[i] = i+1, sum += i+1;

    int curr = 0;
    while(sum + n*curr < k)
        curr++;

    if((sum + n*curr) > k) {
        int diff = sum + n*curr - k;
        cout << diff << '\n';
        for(int i=0; i<n; i++) {
            if(diff <= 0) break;
            if(diff < ((v[i] + curr) - i - 1)) {
                minus[i] = diff;
                diff = 0;
            } else {
                minus[i] = ((v[i] + curr) - i - 1);
                diff -= minus[i];
            }
        }
    }

    //cout << "sum: " << sum + n*curr << '\n';
    for(int i=0; i<n; i++)
        cout << v[i] + curr - minus[i] << '\n';
    return 0;
}
# 결과 실행 시간 메모리 Grader output
1 Incorrect 1 ms 212 KB Output isn't correct
2 Incorrect 0 ms 212 KB Output isn't correct
3 Incorrect 0 ms 212 KB Output isn't correct
4 Correct 1 ms 212 KB Output is correct
5 Incorrect 0 ms 212 KB Output isn't correct
6 Incorrect 0 ms 212 KB Output isn't correct
7 Incorrect 0 ms 212 KB Output isn't correct
8 Correct 0 ms 212 KB Output is correct
9 Correct 0 ms 212 KB Output is correct
10 Incorrect 0 ms 212 KB Output isn't correct