Submission details
Task:Simplified Sudoku
Sender:Yytsi
Submission time:2018-09-13 17:21:53 +0300
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.02 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.02 sdetails
#4ACCEPTED0.02 sdetails
#5ACCEPTED0.02 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.02 sdetails
#8ACCEPTED0.03 sdetails
#9ACCEPTED0.02 sdetails
#10ACCEPTED0.03 sdetails

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:28:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (row.size() == n) r++;
       ~~~~~~~~~~~^~~~
input/code.cpp:37:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (col.size() == n) r++;
       ~~~~~~~~~~~^~~~

Code

#include <bits/stdc++.h>
using namespace std;
#define FOR(i, a, b) for (int i=a; i<(b); i++)
#define IO ios_base::sync_with_stdio(0); cin.tie(0)
#define ff first
#define ss second
#define pb push_back
#define INF 2147483647
#define LINF (1LL<<62LL)
typedef long long ll;
typedef long double ld;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;

#define N 102
int G[N][N];
int r = 0;

int main() {
	IO; int n; cin>>n;
	set<int> row;
	FOR(y,1,n+1) {
		FOR(x,1,n+1) {
			int p; cin>>p;
			G[y][x] = p; // (y,x)
			row.insert(p);
		}
		if (row.size() == n) r++;
		row.clear();
	}
	
	FOR(x,1,n+1) {
		set<int> col;
		FOR(y,1,n+1) {
			col.insert(G[y][x]);
		}
		if (col.size() == n) r++;
	}
	
	cout << ((r==n*2) ? "YES" : "NO");
}

Test details

Test 1

Verdict: ACCEPTED

input
1
1

correct output
YES

user output
YES

Test 2

Verdict: ACCEPTED

input
2
1 2
2 1

correct output
YES

user output
YES

Test 3

Verdict: ACCEPTED

input
2
1 1
1 1

correct output
NO

user output
NO

Test 4

Verdict: ACCEPTED

input
2
2 2
2 2

correct output
NO

user output
NO

Test 5

Verdict: ACCEPTED

input
2
1 2
1 2

correct output
NO

user output
NO

Test 6

Verdict: ACCEPTED

input
2
1 2
1 1

correct output
NO

user output
NO

Test 7

Verdict: ACCEPTED

input
100
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

correct output
NO

user output
NO

Test 8

Verdict: ACCEPTED

input
100
32 84 70 64 50 82 33 91 77 56 ...

correct output
NO

user output
NO

Test 9

Verdict: ACCEPTED

input
100
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

correct output
YES

user output
YES

Test 10

Verdict: ACCEPTED

input
100
1 2 3 4 5 6 7 8 9 10 11 12 13 ...

correct output
NO

user output
NO