CSES - Harjoituskisa 7.1.2018 - Results
Submission details
Task:Inversiot
Sender:Olli
Submission time:2018-01-07 19:54:35 +0200
Language:C++
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED11
#2ACCEPTED35
#3ACCEPTED54
Test results
testverdicttimegroup
#1ACCEPTED0.05 s1details
#2ACCEPTED0.05 s1details
#3ACCEPTED0.04 s1details
#4ACCEPTED0.03 s1details
#5ACCEPTED0.04 s1details
#6ACCEPTED0.06 s2details
#7ACCEPTED0.06 s2details
#8ACCEPTED0.05 s2details
#9ACCEPTED0.04 s2details
#10ACCEPTED0.05 s2details
#11ACCEPTED0.14 s3details
#12ACCEPTED0.13 s3details
#13ACCEPTED0.15 s3details
#14ACCEPTED0.16 s3details
#15ACCEPTED0.14 s3details

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:28:19: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i = 0; i < moved.size(); ++i) {
                   ^

Code

#include <iostream>
#include <vector>


using namespace std;

typedef long long ll;

const int N = 1e6 + 5;

vector<int> moved;
bool beenMoved[N];

int main() {
	int n;
	ll k;
	cin >> n >> k;
	ll curSum = 0;
	for(int i = n - 1; i >= 1; --i) {
		if(curSum + i <= k) {
			moved.push_back(i+1);
			curSum += i;
			beenMoved[i+1] = true;
		}
	}


	for(int i = 0; i < moved.size(); ++i) {
		cout << moved[i] << " ";
	}
	for(int i = 1; i <= n; ++i) {
		if(!beenMoved[i]) {
			cout << i << " ";
		}
	}
	cout << "\n";




}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
5 0

correct output
1 2 3 4 5 

user output
1 2 3 4 5 

Test 2

Group: 1

Verdict: ACCEPTED

input
5 1

correct output
2 1 3 4 5 

user output
2 1 3 4 5 

Test 3

Group: 1

Verdict: ACCEPTED

input
5 2

correct output
3 1 2 4 5 

user output
3 1 2 4 5 

Test 4

Group: 1

Verdict: ACCEPTED

input
5 4

correct output
5 1 2 3 4 

user output
5 1 2 3 4 

Test 5

Group: 1

Verdict: ACCEPTED

input
5 10

correct output
5 4 3 2 1 

user output
5 4 3 2 1 

Test 6

Group: 2

Verdict: ACCEPTED

input
100 0

correct output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

user output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 7

Group: 2

Verdict: ACCEPTED

input
100 1

correct output
2 1 3 4 5 6 7 8 9 10 11 12 13 ...

user output
2 1 3 4 5 6 7 8 9 10 11 12 13 ...

Test 8

Group: 2

Verdict: ACCEPTED

input
100 990

correct output
100 99 98 97 96 95 94 93 92 91...

user output
100 99 98 97 96 95 94 93 92 91...

Test 9

Group: 2

Verdict: ACCEPTED

input
100 1980

correct output
100 99 98 97 96 95 94 93 92 91...

user output
100 99 98 97 96 95 94 93 92 91...

Test 10

Group: 2

Verdict: ACCEPTED

input
100 4950

correct output
100 99 98 97 96 95 94 93 92 91...

user output
100 99 98 97 96 95 94 93 92 91...

Test 11

Group: 3

Verdict: ACCEPTED

input
1000000 0

correct output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

user output
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 12

Group: 3

Verdict: ACCEPTED

input
1000000 1

correct output
2 1 3 4 5 6 7 8 9 10 11 12 13 ...

user output
2 1 3 4 5 6 7 8 9 10 11 12 13 ...

Test 13

Group: 3

Verdict: ACCEPTED

input
1000000 99999900000

correct output
1000000 999999 999998 999997 9...

user output
1000000 999999 999998 999997 9...

Test 14

Group: 3

Verdict: ACCEPTED

input
1000000 199999800000

correct output
1000000 999999 999998 999997 9...

user output
1000000 999999 999998 999997 9...

Test 15

Group: 3

Verdict: ACCEPTED

input
1000000 499999500000

correct output
1000000 999999 999998 999997 9...

user output
1000000 999999 999998 999997 9...