|
Latin négyzet
Írjon programot, amelynek első parancssori argumentuma egy szöveges állomány neve! A szöveges
állományban egész számokat tartalmazó négyzetes mátrixok leírásai szerepelnek. Egy
n × n-es mátrixot n + 1 sor ír le. Az
első sorban egyetlen n egész szám (n > 0) szerepel. Az ezt követő
n sor mindegyikében n darab egész szám található. Az egyes sorokban a
számok egy szóköz karakterrel vannak elválasztva egymástól. A program döntse el, hogy a
szöveges állományban található mátrixok latin négyzetek-e, azaz igaz-e rájuk az, hogy minden
sorukban és minden oszlopukban szerepel-e 1-től n-ig az összes egész szám! (Ez azt
jelenti, hogy minden sorban és minden oszlopban pontosan egyszer fordul elő 1-től
n-ig minden egész szám.) Ha egy mátrix latin négyzet, a program írjon a standard
kimenetre egy „YES”, egyébként pedig egy „NO” szót tartalmazó sort!
Példa bemenet
3 1 2 3 2 3 1 3 1 2 4 1 2 3 4 2 1 4 3 3 4 1 2 4 3 2 1 4 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4
letöltés szöveges állományként
A példa bemenethez tartozó kimenet
YES YES NO
letöltés szöveges állományként
|
|