CSES - Putka Open 2015 – 1/6 - Results
Submission details
Task:Aita
Sender:
Submission time:2015-07-19 19:11:08 +0300
Language:C++
Status:READY
Result:45
Feedback
groupverdictscore
#1ACCEPTED17
#2ACCEPTED28
#30
Test results
testverdicttimegroup
#1ACCEPTED0.09 s1details
#2ACCEPTED0.09 s1details
#3ACCEPTED0.07 s1details
#4ACCEPTED0.08 s1details
#5ACCEPTED0.08 s1details
#6ACCEPTED0.09 s2details
#7ACCEPTED0.09 s2details
#8ACCEPTED0.10 s2details
#9ACCEPTED0.11 s2details
#10ACCEPTED0.09 s2details
#110.08 s3details
#120.08 s3details
#130.07 s3details
#140.08 s3details
#15ACCEPTED0.09 s3details

Code

#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;

int ans[200001];
int n,k;

char ok() {
    for (int i = 1; i < n; ++i) {
        if (abs(ans[i-1] - ans[i]) < k) return 0;
    }
    return 1;
}

void print() {
    for (int i = 0; i < n; ++i) {
        cout << ans[i] << " ";
    }
    cout << endl;
}

int main() {
    cin.sync_with_stdio(0);

    cin >> n >> k;
    if (n <= 10) {
        for (int i = 1; i<=n; ++i) {
            ans[i-1] = i;
        }
        while (!ok() && next_permutation(ans,ans+n)) {
        }

    } else if (k == 2) {
        int j = 1;
        for (int i = 0; j <= ceil(n/2.0); i+=2, ++j) {
            ans[i] = j;
        }
        for (int i = 1; j<=n; i+=2, ++j) {
            ans[i] = j;
        }
    }
    if (!ok()) {
        cout << "QAQ" << endl;
    } else {
        print();
    }
    return 0;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
2 2

correct output
QAQ

user output
QAQ

Test 2

Group: 1

Verdict: ACCEPTED

input
3 2

correct output
QAQ

user output
QAQ

Test 3

Group: 1

Verdict: ACCEPTED

input
4 2

correct output
3 1 4 2 

user output
2 4 1 3 

Test 4

Group: 1

Verdict: ACCEPTED

input
7 4

correct output
QAQ

user output
QAQ

Test 5

Group: 1

Verdict: ACCEPTED

input
8 4

correct output
5 1 6 2 7 3 8 4 

user output
4 8 3 7 2 6 1 5 

Test 6

Group: 2

Verdict: ACCEPTED

input
80476 2

correct output
40239 1 40240 2 40241 3 40242 ...

user output
1 40239 2 40240 3 40241 4 4024...

Test 7

Group: 2

Verdict: ACCEPTED

input
68652 2

correct output
34327 1 34328 2 34329 3 34330 ...

user output
1 34327 2 34328 3 34329 4 3433...

Test 8

Group: 2

Verdict: ACCEPTED

input
62735 2

correct output
31368 1 31369 2 31370 3 31371 ...

user output
1 31369 2 31370 3 31371 4 3137...

Test 9

Group: 2

Verdict: ACCEPTED

input
71954 2

correct output
35978 1 35979 2 35980 3 35981 ...

user output
1 35978 2 35979 3 35980 4 3598...

Test 10

Group: 2

Verdict: ACCEPTED

input
4 2

correct output
3 1 4 2 

user output
2 4 1 3 

Test 11

Group: 3

Verdict:

input
89814 3

correct output
44908 1 44909 2 44910 3 44911 ...

user output
QAQ

Test 12

Group: 3

Verdict:

input
91140 5

correct output
45571 1 45572 2 45573 3 45574 ...

user output
QAQ

Test 13

Group: 3

Verdict:

input
66703 16675

correct output
33352 1 33353 2 33354 3 33355 ...

user output
QAQ

Test 14

Group: 3

Verdict:

input
66666 33333

correct output
33334 1 33335 2 33336 3 33337 ...

user output
QAQ

Test 15

Group: 3

Verdict: ACCEPTED

input
66666 33334

correct output
QAQ

user output
QAQ