|
問題
6本の辺の長さ(ただし、1桁の整数とします)がすべて異なる4面体はどんなものがありますか。
また、その体積を求めてください。
http://mathworld.wolfram.com/Cayley-MengerDeterminant.html
答え 順列による
4面体OABCについて、OA=a、OB=b、OC=c、AB=d、BC=e、CA=fとする。
1≦a,b,c≦Nとして、
dは、面OABすなわち三角形OABが成立する必要条件 |a-b|<d<a+bを満たす。
eは、面OBC |b-c|<e<b+c
fは、面OCA |c-a|<f<c+a かつ 面ABC |d-e|<f<d+e
得られた結果の2328通りを24で割った値(97通り)が、対称性を除いた場合の数である。
(終わり)
LET N=9 !検索範囲
LET K=0
FOR a=1 TO N !辺OA
FOR b=1 TO N !辺OB
IF NOT( b-a=0 ) THEN !b≠a
FOR c=1 TO N !辺OC
IF NOT( (c-a)*(c-b)=0 ) THEN !c≠aかつc≠b
FOR d=ABS(a-b)+1 TO MIN(N+1,a+b)-1 !面OAB
IF NOT( (d-a)*(d-b)*(d-c)=0 ) THEN
FOR e=ABS(b-c)+1 TO MIN(N+1,b+c)-1 !面OBC
IF NOT( (e-a)*(e-b)*(e-c)*(e-d)=0 ) THEN
FOR f=MAX(ABS(c-a),ABS(d-e))+1 TO MIN(N+1,MIN(c+a,d+e))-1 !面OCA,面ABC
IF NOT( (f-a)*(f-b)*(f-c)*(f-d)*(f-e)=0 ) THEN
CALL calc(a,b,c,d,e,f, V2)
IF V2>0 THEN !結果を表示する
LET K=K+1
PRINT STR$(K);":"; a;b;c;d;e;f; SQR(V2)
END IF
END IF
NEXT f
END IF
NEXT e
END IF
NEXT d
END IF
NEXT c
END IF
NEXT b
NEXT a
END
EXTERNAL SUB calc(a,b,c,p,q,r, V2) !4面体OABCの体積(2乗)
!4面体OABCについて、OA=a、OB=b、OC=c、AB=p、BC=q、CA=rとする。
LET V2=( a^2*q^2*(b^2+c^2+p^2+r^2-a^2-q^2) &
& +b^2*r^2*(a^2+c^2+p^2+q^2-b^2-r^2) &
& +c^2*p^2*(a^2+b^2+q^2+r^2-c^2-p^2) &
& -a^2*b^2*p^2 -b^2*c^2*q^2 -a^2*c^2*r^2 -p^2*q^2*r^2 ) / 144 !オイラーの四面体公式
END SUB
答え 回転対称を除く
4面体OABCについて、OA=a、OB=b、OC=c、AB=d、BC=e、CA=fとする。
展開図
O C O
△▽△▽
A B A
面OABの辺の並びを固定する。
aは、a,b,c,d,e,fの中で一番目に最小とする。
bは、a,b,dの中で二番目に最小とする。
dは、b<d かつ 面OABすなわち三角形OABが成立する必要条件 |a-b|<d<a+bを満たす。
これより、面OABは最小の辺をもつ三角形となり、a,b,dまたはa,d,bと並べたものである。
続いて、
cは、a<c
eは、a<e かつ 面OBC |b-c|<e<b+c
fは、a<f かつ 面OCA |c-a|<f<c+a かつ 面ABC |d-e|<f<d+e
よって、
得られた結果の194通りを2で割った値(97通り)が、対称性のものを除いた場合の数である。
(終わり)
鏡映対称
a b c d e f ⇔ a c b f e d
a b c d e f ⇔ a f d c e b
LET N=9 !検索範囲
LET K=0
FOR a=1 TO N-5 !面OAB
FOR b=a+1 TO N-1
FOR d=MAX(b,ABS(a-b))+1 TO MIN(N+1,a+b)-1
FOR c=a+1 TO N
IF NOT( (c-b)*(c-d)=0 ) THEN !c≠a、c≠b、c≠d
FOR e=MAX(a,ABS(b-c))+1 TO MIN(N+1,b+c)-1 !面OBC
IF NOT( (e-b)*(e-c)*(e-d)=0 ) THEN
FOR f=MAX(a,MAX(ABS(c-a),ABS(d-e)))+1 TO MIN(N+1,MIN(c+a,d+e))-1!面OCA,面ABC
IF NOT( (f-b)*(f-c)*(f-d)*(f-e)=0 ) THEN
CALL calc(a,b,c,d,e,f, V2)
IF V2>0 THEN !結果を表示する
LET K=K+1
PRINT STR$(K);":"; a;b;c;d;e;f; SQR(V2)
END IF
END IF
NEXT f
END IF
NEXT e
END IF
NEXT c
NEXT d
NEXT b
NEXT a
END
EXTERNAL SUB calc(a,b,c,p,q,r, V2) !4面体OABCの体積(2乗)
!4面体OABCについて、OA=a、OB=b、OC=c、AB=p、BC=q、CA=rとする。
LET V2=( a^2*q^2*(b^2+c^2+p^2+r^2-a^2-q^2) &
& +b^2*r^2*(a^2+c^2+p^2+q^2-b^2-r^2) &
& +c^2*p^2*(a^2+b^2+q^2+r^2-c^2-p^2) &
& -a^2*b^2*p^2 -b^2*c^2*q^2 -a^2*c^2*r^2 -p^2*q^2*r^2 ) / 144 !オイラーの四面体公式
END SUB
------------------------------------------------------------
問題 ヘロンの4面体
6本の辺の長さ、4面の面積、体積がすべて整数となる4面体はどんなものがありますか。
答え
1: 25 39 153 56 120 160 V=8064
2: 51 52 84 53 80 117 V=18144
3: 65 119 200 156 87 225 V=35280
4: 65 225 297 232 468 340 V=399168
5: 140 176 275 300 429 261 V=243936
6: 175 203 318 252 221 319 V=1241856 など
OPTION ARITHMETIC RATIONAL
LET N=250 !検索範囲
LET S=0
FOR a=1 TO N !面OAB
FOR b=a TO N
FOR d=MAX(b,ABS(a-b)+1) TO MIN(N+1,a+b)-1
LET t=heron(a,b,d)
IF INTSQR(t)^2=t THEN !ヘロン三角形なら
FOR c=a TO N
FOR e=MAX(a,ABS(b-c)+1) TO MIN(N+1,b+c)-1 !面OBC
LET t=heron(b,c,e)
IF INTSQR(t)^2=t THEN
FOR f=MAX(a,MAX(ABS(c-a),ABS(d-e))+1) TO MIN(N+1,MIN(c+a,d+e))-1!面OCA,面ABC
LET t=heron(c,a,f)
LET tt=heron(d,e,f)
IF INTSQR(t)^2=t AND INTSQR(tt)^2=tt THEN
IF gcd(a,gcd(b,gcd(c,gcd(d,gcd(e,f)))))=1 THEN !互いに素
CALL calc(a,b,c,d,e,f, V2)
IF V2>0 AND INTSQR(V2)^2=V2 THEN !結果を表示する
LET S=S+1
PRINT STR$(S);":"; a;b;c;d;e;f; INTSQR(V2)
END IF
END IF
END IF
NEXT f
END IF
NEXT e
NEXT c
END IF
NEXT d
NEXT b
NEXT a
END
EXTERNAL FUNCTION heron(a,b,c) !三角形OABの面積(2乗)
OPTION ARITHMETIC RATIONAL
LET s=(a+b+c)/2
LET heron=s*(s-a)*(s-b)*(s-c) !ヘロンの公式
END FUNCTION
EXTERNAL SUB calc(a,b,c,p,q,r, V2) !4面体OABCの体積(2乗)
!4面体OABCにすいて、OA=a、OB=b、OC=c、AB=p、BC=q、CA=rとする。
OPTION ARITHMETIC RATIONAL
LET V2=( a^2*q^2*(b^2+c^2+p^2+r^2-a^2-q^2) &
& +b^2*r^2*(a^2+c^2+p^2+q^2-b^2-r^2) &
& +c^2*p^2*(a^2+b^2+q^2+r^2-c^2-p^2) &
& -a^2*b^2*p^2 -b^2*c^2*q^2 -a^2*c^2*r^2 -p^2*q^2*r^2 ) / 144 !オイラーの四面体公式
END SUB
|
|