मैं एक में 4x4 सुडोकू गेम बना रहा हूंयादृच्छिक जेनरेट संख्याओं से भरा बहुआयामी सरणी (1 से 4 तक)। अब मुझे डुप्लिकेट खोजना होगा और उन्हें अन्य यादृच्छिक संख्याओं से प्रतिस्थापित करना होगा जब तक एकल पंक्ति, एकल कॉलम और चार 2x2 उप-मैट्रिक्स पर अद्वितीय संख्या न हो। मैं उसे कैसे कर सकता हूँ?
ग्रिड उत्पन्न करने के लिए मेरा कोड है:
func fill (N:Int) {
for row in 0..<N {
//Append an empty row
matrix.append([Int]())
for _ in 0..<N {
//Populate the row
matrix[row].append(Int(arc4random_uniform(4)+1))
}
}
}
fill(N: 4)
उत्तर:
जवाब के लिए 0 № 1आप सरणी को एक सेट में बदल सकते हैं (डुप्लिकेट हटा देता है) और फिर वापस सरणी में बदल सकते हैं। परंतु आपका ऑर्डर बदल सकता है।
matrix = Array(Set(matrix))