九宮格的解題過程_第1頁
九宮格的解題過程_第2頁
九宮格的解題過程_第3頁
九宮格的解題過程_第4頁
九宮格的解題過程_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

九宮格解過程第步首先算行字和1-9九個(gè)數(shù)字之和:1+2+3+4+56+7+8+9=九宮格共有三行,并且每行的數(shù)字之和相等,因此=,即每行數(shù)字之和為15。第步計(jì)算間的字考慮第2,第2列,和條對角線的數(shù)字之和。它們的總和為=在它們的總和中,中間格子的數(shù)字出現(xiàn)了4,其它位置格子的數(shù)字都出現(xiàn)了而且僅出現(xiàn)了1。所以,它們的總和=(中間格子的數(shù)字)+(其它8數(shù)字)=(3×中間格子的數(shù)字)+(19個(gè)數(shù)字之和)因此,=中間格子的數(shù)字+,中間格子的數(shù)字等于5第步,奇不出在個(gè)上格里比如,如果數(shù)字出現(xiàn)在角上的格子里,那么為了保證9所在行或所在列的數(shù)字和為15,必須需要4個(gè)數(shù)字,兩兩之和必為6123,46,78中,只24成和為6的數(shù)字對,到第2和為6數(shù)字對是不可能的。因此,數(shù)字不能出現(xiàn)在個(gè)角上的格子里。同樣道理,13,7也不能出現(xiàn)在4個(gè)角上的格子里。第步,2,46,必須填在個(gè)角的子,且證角數(shù)和第步,將,3,,填相的子就成九格數(shù)任,意為15的條。完成了填九宮格的任務(wù)后,我們進(jìn)一步考慮,如果上面九宮格內(nèi)所有數(shù)字都加數(shù)字會發(fā)生什么呢?即可不可以用數(shù)字23,45,67,8,9,10九宮格,得到每一行,每一列,每一對角線的三個(gè)數(shù)字之和都相等的新九宮格呢。顯而易見上面九宮格每行每列每對角線數(shù)字之和為奇數(shù)59處在4個(gè)角上的格子里,中間數(shù)6在中間的格子里。從1-9和2-10九個(gè)數(shù)字所填充的九宮格可以得出下列規(guī)律:1)九個(gè)數(shù)是由個(gè)相連的整數(shù)構(gòu)成的。2)九個(gè)數(shù)中正中間的數(shù)字填在九宮格的中間格子里。-9中的5,2-10的6等。3)每行每的數(shù)字和等于中間數(shù)字的三倍。比如15=5′3和18=6′34)第2,46,8的數(shù)字填充到4個(gè)角上的格子里。如2,34,5,67,8,9,中的35,7,9123,4,5,6,7,8,9中的2,4,6,8。問題1:已知9個(gè)相連的整數(shù)填充的九宮格其每行數(shù)字和為45,求這九個(gè)數(shù)字。

中間格數(shù)字為=,為正中間的數(shù)字,因此九個(gè)數(shù)字為11121314151617,18,19問題:已知個(gè)相連整數(shù)填的九宮其行數(shù)字為,求九宮個(gè)角格里的數(shù)96?332,得到九數(shù)字為,29,,,333435,36。4個(gè)角上的數(shù)字為,,33,其中和29對角關(guān)系,和為對角關(guān)系。問題3:成公差為d()的等差數(shù)列是否也填九宮格?比如公差為3的等差數(shù),,4,710,16,19,22,如何填九宮格?,25,35,55,6575,又怎樣填?古人說,“學(xué)貴有疑。小疑則小進(jìn),大疑則大進(jìn)”。在學(xué)習(xí)中,我們要注意歸納和演繹能力的培養(yǎng),總結(jié)一些規(guī)律,不但增加了學(xué)習(xí)的有效性和趣味性,對理解和掌握有關(guān)問題也很有益處。培育創(chuàng)新型人才既是學(xué)校和老師的責(zé)任,也是我們學(xué)生要刻意磨練的目標(biāo)。本文通過詳解九宮格問題,得到了一些有意義的結(jié)論和規(guī)律,而這些規(guī)律的獲得使我們對九宮格問題也有了更加深入的認(rèn)識。

幻方的解三階方的解法第一種:楊輝法:九子斜排,上下對易,左右相更,四維挺出。124357689294753618第二種:九宮圖也是幻方的別稱,三階幻方就是著名的洛書,他的排列是::“戴九履一,左三右七,二四為肩,六八為足,五居中央(9在上中,1在下中。3在左中,7在右中,在左上,4在右上,6在左下,8在右下)第三種:羅伯法:最小的數(shù)據(jù)上行中央,依次向右上方斜填,上出框往下寫,右出框往左填,排重便在下格填,右上排重一個(gè)樣813549四階幻的解法1、先把這16個(gè)數(shù)字按順序從小到到排成一個(gè)4乘4的方陣2、內(nèi)外四個(gè)角對角上互補(bǔ)的數(shù)相易,(方陣分為兩個(gè)正方形,外大內(nèi)小,然后把大正方形的四個(gè)對角上的數(shù)字對換,小正方形四個(gè)對角上的數(shù)字對換)即(1,16)(4,13)互換(6,11)(7,10)互換16231351110897612414151另:對于n=4k幻方,我們先把數(shù)字按順序填寫。寫好后,按4把它劃分成k*k個(gè)方陣。因n4倍數(shù),一定能用4*4的小方陣分割。然后把每個(gè)小方陣的對角線,象制作4階幻方的方法一樣,對角線上的數(shù)字換成互補(bǔ)的數(shù)字,就構(gòu)成幻方。五階方的解法羅伯法:最小的數(shù)據(jù)上行中央,依次向右上方斜填,上出框往下寫,右出框往左填,排重便在下格填,右上排重一個(gè)樣。172415235164613221012213111829(在最上一行的中間填接著在的右上方填由于1在最上一行所以1的右上方應(yīng)該是第五行的第四個(gè),接下來在的右上方填的右上方應(yīng)該是第三行第一個(gè),所以在此填4,4右上方填5,在5的下方6,接著按前面五個(gè)數(shù)的填法依次填在10的下方11,然后按上面的方法填每次填五個(gè)數(shù),直到完成.

無論從上到下還是從左到右都是五排,所以每排的五個(gè)數(shù)之和為(1+2+3+4+…+25)÷5=65,因此,可以驗(yàn)算一下是否每個(gè)和都是65.此法適合于一切奇階幻方.)

數(shù)獨(dú)游戲數(shù)獨(dú),據(jù)說最先是在瑞典,后來到美國,然后到日本被發(fā)揚(yáng)光大。這個(gè)游戲,進(jìn)入了今年上海大的自主招生試題最一道大題就是數(shù)獨(dú)題。上面的圖片中,紅色是在玩游戲前給出的數(shù)字,藍(lán)色的數(shù)字就是后填的。游戲的規(guī)則很簡單,每一行填入—九數(shù)字,每一列也填入—九數(shù)字,但同時(shí)要滿足每一個(gè)九宮格中也包含—9九數(shù)字,也就是說每一個(gè)九宮格中也填入9九數(shù)字。此圖的特別之處就是橫行縱列加上兩條對角線上的三個(gè)數(shù)字之和均為5類似于這樣的問題,也稱之為幻方,像上面的九宮格,可稱3階方(因每行,每列,兩條對角線上數(shù)字個(gè)數(shù)是有4階階6階。此外還可分為奇階幻方偶階幻方。九宮格就屬于奇階幻方。下面是個(gè)五階幻方。

幻方的填寫是有規(guī)律的我想通上面兩個(gè)兩個(gè)幻方可以找到一些規(guī)律階幻方的填寫規(guī)律比階幻方要稍微復(fù)雜小聲點(diǎn)說,我還不是太白,還在繼續(xù)學(xué)習(xí)中。練1.完成一數(shù)游題,不下哪考也有樣題!

練習(xí):階幻方三個(gè)數(shù)的是155階方五個(gè)數(shù)的和,你能說出階幻方中個(gè)數(shù)的和和是多少?

是多少嗎進(jìn)一步,你說出奇階幻方n個(gè)數(shù)字的練習(xí):完一個(gè)7階幻方。

比如說三階幻方,先向外翻折擴(kuò)展,然后按上圖左二的規(guī)律,按順序?qū)?-9的數(shù)字,接下來幻方之外的數(shù),按左往右仍,右往左仍,上往下扔,下往上扔的規(guī)律填進(jìn)幻方,將其余的刪去,就得到一個(gè)橫豎斜都于15的方了!下圖是五階幻方的解法,方法相同,只是規(guī)模大了點(diǎn)。七階幻方如下:(唉,上面那種做圖太累,后面的圖就來自于互聯(lián)網(wǎng)了。。)

只要按照這個(gè)方法,無論多少階,只要是個(gè)奇數(shù),都可以畫得出來,至少一個(gè)!你可以奸詐一點(diǎn),比如說畫好菱形后,1的起始位置是可以的,寫的方向也是可以換的,但是最后出來的幻方本質(zhì)上是一樣的。。對于偶數(shù)呢,最小是4階的,四階的方老師也講了一個(gè)解法,就是大對角線換,小對角線也換。步驟如下:先按順序?qū)懗?-16的數(shù)在幻方里面,如下:接下來所謂的大對角線換小對角線換就是1和16413換6和710換完就出來了:

橫豎斜都是34。然后問題就來了,有沒有辦法可以解出任意高偶數(shù)階的幻方的方法呢?我曾經(jīng)很傻很天真的試圖把4階這種換對角線的方法推廣到6階,但是怎么弄都未果,估計(jì)這方法對于4只是種巧合吧。后來大學(xué)玩matlab后,發(fā)matlab里面函magic可以輸出任意階的幻方,哦,soga,原來真的有的啊。后來我就對著matlab里面magic源文件寫出了這個(gè)版本,只是為了鞏固自己對四階的理解罷了。然后下面整理一下一般的偶數(shù)階幻方的解法,解法來源于互聯(lián)網(wǎng)。首先一般的偶數(shù)階解法都是把偶數(shù)分成兩種,這種4m雙偶數(shù)和這種4m+2的單偶數(shù),一般的解法都是分開來兩類的括里面magic函數(shù),不過查了一下也有很多大牛研究出了統(tǒng)一解法,更有大神把奇偶階全部同意了,膜拜ing。。。雙偶數(shù)解法:偶數(shù)階下面先講簡單的雙偶數(shù)解法,看了很多解法,但是最后發(fā)現(xiàn)了一個(gè)通解,網(wǎng)上看到的大部分解法都是這個(gè)通解的特例。首先呢,如下圖所示,先把n階幻方分成4個(gè)小塊,對于左上角那個(gè)你任意的把一半放個(gè)填成灰色,但是有一個(gè)約束條件,就是左上角這個(gè)小塊中每一行每一列都要只有個(gè)灰色的。然后呢,右上的那個(gè)小塊的填色方案就是左上填色方案的左右鏡像對稱,左下的就是左上天色方案的上下鏡像對稱,自然,右下就是左上的中心對稱了。如下圖所示:

然后呢把這么多個(gè)數(shù)按順序填進(jìn)白色的格子里去,灰色的部分要留著。如下面左圖所示:之后呢剩下的沒填的數(shù)反過來填進(jìn)去,也就是從右下到左上的順序,填完雙偶數(shù)階幻方就出來了。現(xiàn)在我們來討論一下這種方法,首先看我們原本的四階幻方的解法,有沒有發(fā)現(xiàn)其實(shí)和這種方法是一個(gè)東西。然后再看看雙偶數(shù)階的另一種解法,比如說下面這個(gè)幻方:這里的解法呢,就是把整個(gè)幻方分成4×4的小塊,按順序填好1-64個(gè)數(shù),然后每個(gè)小塊的對角線上的數(shù)不變,其余的數(shù)做中心對稱。再看看下面這個(gè):

12階成3×34×4的小塊之前一樣,按順序填好數(shù),然后每個(gè)4×4小塊的角線上的數(shù)不變,其余的數(shù)做中心對稱。雖然和我最開始的那種分法不一樣,但是你仔細(xì)一想,其實(shí)是完全一樣的,只是他的填色方案是固定的一種模式而已。還有一種說法是每個(gè)小塊對角線上的數(shù)換成互補(bǔ)的那個(gè)數(shù),其實(shí)本質(zhì)還是一樣嘛。下面是一個(gè)雙偶數(shù)的matlab程序,我填色方案用時(shí)是國際象棋棋盤那種黑白相間。functiona=hf_4m(n)flagzeros(n/2,n/2);flag(1:2:n/2,1:2:n/2)=flag(2:2:n/2,2:2:n/2)=flag[flagfliplr(flag);flipud(flag)flipud(fliplr(flag))];a=reshape(1:n^2,n,n)';a=flag;a=reshape(a',1,n^2);blank_idxfind(a==0);number_left(1:n^2)(a==0);number_leftfliplr(setdiff(number_left,0));

a(blank_idx)number_left;a=reshape(a,n,n)';單偶數(shù)解法:下面來看看單偶數(shù)的解法,這種現(xiàn)在主要有兩種方法,分區(qū)法和易位法。其中呢,分區(qū)法也有兩種。先說分區(qū)法,首先呢就是把方陣劃分成下面四,因?yàn)槭菃闻紨?shù),所以每一塊必然是個(gè)奇數(shù)幻方。然后把1~n2/4這些數(shù)組成的奇數(shù)階幻方算出來填進(jìn)A面,然后接下來n2/4的方填進(jìn)D里面(其實(shí)有個(gè)很簡單的方法,就是A面的每個(gè)數(shù)加上n2/4就可以了),再里面的加上n2/4到B里面,最后那些放C里面。下面是10階幻方的一個(gè)例子:

然后下面的東西有點(diǎn)拗口,但是細(xì)細(xì)讀就會明白了:先假設(shè)階數(shù)是4k+2那么k=(n-2)/4然后下面是第一種方法:從A塊的中間行中間格開始(上圖中的13),向右k個(gè)數(shù)(包括中間行中間格那個(gè)),和小塊的相應(yīng)位置的數(shù)換位。A塊的其他行(也就是除了最中間那一行)從最左開始數(shù)出個(gè)數(shù),和C中相應(yīng)位置的數(shù)換。B塊中間列開始,向左數(shù)出來(當(dāng)然也包括B塊中間那一列),然后這些列和D小塊中相應(yīng)未知的數(shù)換位。(6階k-1=0,就不用了)

然后就完成了。14階幻方的換位方式如下:這種方法的matlab函數(shù)如下:functiona=hf_4m_2(n)a=zeros(n,n);

a(1:n/2,1:n/2)magic(n/2);a(n/2+1:n,n/2+1:n)=+n^2/4;a(1:n/2,n/2+1:n)a(1:n/2,1:n/2)n^2/4*2;a(n/2+1:n,1:n/2)a(1:n/2,1:n/2)n^2/4*3;m=(n/2-1)/2;tempa((n/2+1)/2,(n/2+1)/2:(n/2+1)/2+m-1);a((n/2+1)/2,(n/2+1)/2:(n/2+1)/2+m-1)a((n/2+1)/2+n/2,(n/2+1)/2:(n/2+1)/2+m-1);a((n/2+1)/2+n/2,(n/2+1)/2:(n/2+1)/2+m-1)temp;tempa(setdiff(1:n/2,(n/2+1)/2),1:1+m-1);a(setdiff(1:n/2,(n/2+1)/2),1:1+m-1)a(setdiff(1:n/2,(n/2+1)/2)+n/2,1:1+m-1);a(setdiff(1:n/2,(n/2+1)/2)+n/2,1:1+m-1)temp;if(m>1)tempa(1:n/2,n*3/4+1/2-m+2:n*3/4+1/2);a(1:n/2,n*3/4+1/2-m+2:n*3/4+1/2)a(1+n/2:n,n*3/4+1/2-m+2:n*3/4+1/2);a(1+n/2:n,n*3/4+1/2-m+2:n*3/4+1/2)temp;end然后還有一種換位方法A小塊中間那一行第2列開始往右數(shù)k個(gè)數(shù)和C小塊中相應(yīng)位置的數(shù)換位,A小塊中其余行都從最左開始向右數(shù)k列,這些數(shù)也和小塊的做交換。B小塊中,從最右開始向左數(shù)k-1列,與D中相應(yīng)位置的數(shù)換位,結(jié)果也是一樣的。這種方法matlab代碼如下:functiona=hf_4m_2(n)a=zeros(n,n);a(1:n/2,1:n/2)magic(n/2);a(n/2+1:n,n/2+1:n)=+n^2/4;a(1:n/2,n/2+1:n)a(1:n/2,1:n/2)n^2/4*2;a(n/2+1:n,1:n/2)a(1:n/2,1:n/2)n^2/4*3;m=(n/2-1)/2;

tempa((n/2+1)/2,2:2+m-1);a((n/2+1)/2,2:2+m-1)=a((n/2+1)/2+n/2,2:2+m-1);a((n/2+1)/2+n/2,2:2+m-1)=tempa(setdiff(1:n/2,(n/2+1)/2),1:1+m-1);a(setdiff(1:n/2,(n/2+1)/2),1:1+m-1)a(setdiff(1:n/2,(n/2+1)/2)+n/2,1:1+m-1);a(setdiff(1:n/2,(n/2+1)/2)+n/2,1:1+m-1)temp;if(m>1)tempa(1:n/2,n:-1:n-m+2);a(1:n/2,n:-1:n-m+2)a((1:n/2)+n/2,n:-1:n-m+2);a((1:n/2)+n/2,n:-1:n-m+2)=temp;end這兩中方法為什么可行我還沒仔細(xì)研究但是剛剛編程發(fā)現(xiàn)一個(gè)很神奇的現(xiàn)象就是第一種方法的小塊交換規(guī)則配上第二種方法的AC小塊交換規(guī)則,也是可以的。。囧。。對于單偶數(shù)的幻方,還有一種楊輝創(chuàng)造的二階方陣易位法(我發(fā)現(xiàn)楊輝老兄很喜歡玩數(shù)陣)。。對于n=4m+2階幻方,先用奇數(shù)階的方法做出一個(gè)階幻方來,然后1~n2那么多個(gè)數(shù)4一組分成(2m+1)2個(gè)組{1,2,3,4}{5,6,7,8}{9,10,11,12}…分別稱為第1組第2組第3組…第2m+1)2組。接下來那每一組四個(gè)數(shù)按下面的方法放入的方陣中:然后把之前那個(gè)2m+1幻方,每個(gè)位置上的數(shù)如果是i,那么就換成第i組2×2陣,這樣就有了一個(gè)n×n的方陣了,但是這個(gè)方陣還不是幻方,需要再修正。我們繼續(xù)討論剛才那一個(gè)2m+1階幻方,假設(shè)我們n=14那么2m+1=7對于下圖中這個(gè)7階的方陣,我們把倒數(shù)第二行染綠,然后從中間那一行開始向下知道倒數(shù)第三行為止全部染藍(lán),如果中間那一行就是倒數(shù)第二行,那么不染藍(lán)。

接下來在把最左和最右兩列的染色向下拉一格。如下圖:我們知道對應(yīng)于剛剛做出來的那個(gè)的方陣2×2方陣,四個(gè)數(shù)對應(yīng)于上圖的一個(gè)格。我們現(xiàn)在做如下操作,如果是綠色的格子,那么2×2方陣的最下面兩個(gè)數(shù)交換,如果是藍(lán)色格子的話,方陣不僅下面兩個(gè)數(shù)交換,而且上面兩個(gè)數(shù)也要交換。下面舉個(gè)例子:對于14階幻方,先生成一個(gè)7幻方然后把相應(yīng)位置填上相應(yīng)的2階方陣:

填好色:綠色格子下面兩個(gè)數(shù)換位藍(lán)色的上下都換,就得到結(jié)果啦~~~楊輝易位法代碼如下:functiona=hf_4m_2_yiwei(n)h=magic(n/2);

a=zeros(n,n);fori1forj1a(i*2-1:i*2,j*2-1:j*2)3;4+(h(i,j)-1)*4;endendflagzeros(n/2,n/2);flag(n/2-1,:)%%下面兩個(gè)互換if(nflag((n/2+1)/2:n/2-2,:)=%%上面下面都要換endflag(2:n/2,[1flag(1:n/2-1,[1n/2]);fori1forj1if(flag(i,j)tempa(i*2,j*2-1);a(i*2,j*2-1)a(i*2,j*2);a(i*2,j*2)temp;endif(flag(i,j)tempa(i*2-1,j*2-1);a(i*2-1,j*2-1)a(i*2-1,j*2);a(i*2-1,j*2)temp;endendend喲西,好了,終于寫的差不多了。自個(gè)研究了一下,收獲頗多。不過幻方可不僅僅是構(gòu)造那么簡單,以前看的一本書里面有各種變態(tài)的幻方,什么切尾幻方什么的。。還有很多數(shù)學(xué)上的東西,下面提問,請證明:偶數(shù)階幻方行列式值一定是0!

下面附上一個(gè)很多年前改寫的magic函數(shù)的C++代碼:#include<iostream.h>#include<iomanip.h>classmagic{public:int**m;magic();magic(magicvoidshow();intsize;};magic::magic(magic{intn=c.size;size=n;newint*[n];for(intl=0;l<n;l++){newint[n];for(intk=0;k<n;k++){m[l][k]=c.m[l][k];}}

}magic::magic(intn){size=n;newint*[n];for(intl=0;l<n;l++){newint[n];for(intk=0;k<n;k++)m[l][k]=0;}}voidmagic::show(){for(intl=0;l<size;l++){for(intk=0;k<size;k++)";cout<<endl;}cout<<endl;}magiccreatmagic(intn){intl,k;

if(n%2==1){magici(n),j(n),m(n),a(n),b(n);for(l=0;l<n;l++)for(k=0;k<n;k++){j.m[l][k]=k+1;i.m[l][k]=l+1;}for(l=0;l<n;l++)for(k=0;k<n;k++){a.m[l][k]=(i.m[l][k]+j.m[l][k]-(n+3)/2)%n;if(a.m[l][k]<0)a.m[l][k]+=n;b.m[l][k]=(i.m[l][k]+j.m[l][k]*2-2)%n;if(b.m[l][k]<0)b.m[l][k]+=n;m.m[l][k]=n*a.m[l][k]+b.m[l][k]+1;}returnm;}elseif(n%4==0){magici(n),j(n),d(n),m(n);for(l=0;l<n;l++)for(k=0;k<n;k++){j.m[l][k]=k+1;i.m[l][k]=l+1;

d.m[l][k]=(((i.m[l][k]%4)/2)==((j.m[l][k]%4)/2));m.m[l][k]=l*n+k+1;if(d.m[l][k]==1)m.m[l][k]=n*n+1-m.m[l][k];}returnm;}else{intp=n/2;magict(creatmagic(p)),m(n);for(l=0;l<n;l++)for(k=0;k<n;k++)(l<n/2&&k<n/2)m.m[l][k]=t.m[l][k];elseif(l<n/2&&k>=n/2)m.m[l][k]=t.m[l][k-n/2]+2*p*p;elseif(l>=n/2&&k<n/2

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論