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

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:19:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if(d[0].size() + r <= k)
                      ^
input/code.cpp:34:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int ii = 0; ii < d.size(); ii++)
                     ^
input/code.cpp:35:22: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   for(int jj = 0; jj < d[ii].size(); jj++)
                      ^

Code

#include <deque>
#include <iostream>
#include <vector>

using namespace std;

int main()
{
	long long int n, k;
	cin >> n >> k;

	long long int i = n, r = 0;

	deque<vector<int>> d;
	d.push_back({});

	while(r < k && i > 0)
	{
		if(d[0].size() + r <= k)
		{
			r += d[0].size();
			d[0].push_back(i);
			i--;
		}
		else
		{
			d.push_front({});
		}
	}

	for(int ii = 1; ii <= i; ii++)
		cout << ii << " ";

	for(int ii = 0; ii < d.size(); ii++)
		for(int jj = 0; jj < d[ii].size(); jj++)
			cout << d[ii][jj] << " ";

	cout << endl;
}

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
1 2 3 5 4 

Test 3

Group: 1

Verdict: ACCEPTED

input
5 2

correct output
3 1 2 4 5 

user output
1 3 2 5 4 

Test 4

Group: 1

Verdict: ACCEPTED

input
5 4

correct output
5 1 2 3 4 

user output
2 1 5 4 3 

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
1 2 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
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 9

Group: 2

Verdict: ACCEPTED

input
100 1980

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

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

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
1 2 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
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

Test 14

Group: 3

Verdict: ACCEPTED

input
1000000 199999800000

correct output
1000000 999999 999998 999997 9...

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

Test 15

Group: 3

Verdict: ACCEPTED

input
1000000 499999500000

correct output
1000000 999999 999998 999997 9...

user output
1000000 999999 999998 999997 9...