超低効率、しかし、あまりにもすることができます。。。。
1 クラスのソリューション: 2 DEF generateMatrix(自己、N): 3 TR =接地Tc = 0 4 のdR = N-1 5 DC = N-1 6 X = [0 用の I における範囲(N)] のための J で範囲( N)] 7 = 1 nowNum 8 ながら(TR <=のdR 及び tCの<= DC): 9 nowNum = self.draw(TR、TC、DR、DC、X、nowNum) 10 TR + = 1 11 tCの+ = 1 12 のdR - = 1 13 DC-= 1つの 14 リターンX 15 DEF 描く(自己、TR、TC、DR、DC、リスト、nowNum): 16 、I = tCで 17 J = TR 18 フラグ= 偽 19 ながら(iはDC = <): #往右 20 リスト[TR] [I] = nowNum 21 #プリント( "{} {} {}"形式(TR、I、nowNum)) 22 nowNum + = 1 23 I + = 1 24 I-= 1 25 J + = 1 26 一方(J <= DR): #往下 27の リスト[J] [DC = nowNum 28 # プリント( "{} {} {}"形式(J、DC、nowNum)) 29 nowNum + = 1 30 J + = 1 31 J- = 1 32 I- = 1 33 なら J ==のdR とのdR =!TR: 34 ながら(I> = TC): #往左 35人の リスト【のdR] [I] = nowNum 36 #の 印刷( "{} {} {}"形式(DR。 、I、nowNum)) 37 nowNum + = 1つの 38 フラグ= 真 39 I- = 1 40 I + = 1 41 42 かのフラグ及び I == tCの: 43 J- = 1 44 ながら(J> TR): #往上 45の リスト[J] [tCで] = nowNum 46 #プリント( "{ } {} {}」形式(J、TC、nowNum)) 47 nowNum + = 1 48 J- = 1 49 + = 1 J 50 戻り nowNum