CSES - Datatähti 2020 alku - Results
Submission details
Task:Ruudukko
Sender:pants64
Submission time:2019-09-30 17:30:51 +0300
Language:C++17
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED100
Test results
testverdicttime
#1ACCEPTED0.01 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.01 sdetails
#4ACCEPTED0.01 sdetails
#5ACCEPTED0.04 sdetails
#6ACCEPTED0.04 sdetails

Code

#include <iostream>
#include <vector>

using std::cout, std::cin, std::vector;

vector<vector<int>> matrix;

inline bool ScanLeft(int x, int y, int n)
{
	for (int i = 0; i < x; i++)
	{
		if (matrix[i][y] == n) return true;
	}
	return false;
}

inline bool ScanUp(int x, int y, int n)
{
	for (int i = 0; i < y; i++)
	{
		if (matrix[x][i] == n) return true;
	}
	return false;
}

int main()
{
	int n;
	cin >> n;

	matrix.resize(n, vector<int>(n, 0));

	for (int j = 0; j < n; j++)
	{
		for (int i = 0; i < n; i++)
		{
			int k = 1;

			while (true)
			{
				if (!ScanLeft(i, j, k) && !ScanUp(i, j, k))
				{
					cout << (matrix[i][j] = k) << " ";
					break;
				}
				k++;
			}
		}
		cout << "\n";
	}
}

Test details

Test 1

Verdict: ACCEPTED

input
1

correct output

user output

Test 2

Verdict: ACCEPTED

input
2

correct output
1 2 
2 1 

user output
1 2 
2 1 

Test 3

Verdict: ACCEPTED

input
5

correct output
1 2 3 4 5 
2 1 4 3 6 
3 4 1 2 7 
4 3 2 1 8 
5 6 7 8 1 

user output
1 2 3 4 5 
2 1 4 3 6 
3 4 1 2 7 
4 3 2 1 8 
5 6 7 8 1 

Test 4

Verdict: ACCEPTED

input
42

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 5

Verdict: ACCEPTED

input
99

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 6

Verdict: ACCEPTED

input
100

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 ...