Weekend Mathematics問題/問題69



69.素数と因数分解

Aには4つの数、1、2、4、8
Bには4つの数、1、3、9、27
Cには4つの数、1、5、25、125
Dには4つの数、1、7、49、343

があります。AからDのそれぞれから1つずつ数を選び、それらを すべてかけ合わせて数を作ります。
たとえば、Aから4、Bから1、Cから1、 Dから49を選べば、4×1×1×49=196ができます。

問1.全部で何通りの数ができますか。

問2.1以上の整数1、2、3・・・のうち、作れない数を小さい方から順に3つ答えなさい。

問3.作ることのできる数のうちでいちばん大きい数を、10番目に大きい数で割ると いくらになりますか。







問題の出典


ピーター先生と中学入試の算数に挑戦!
ピーター・フランクル
新潮社
淳心学院中学校2001年度入試






答えと解説





答えと解説

解答・その1

(ペンネ−ム:テモ)

問1.256通り

問2.11, 13, 16

問3.10




解答・その2

(ペンネ−ム:スモークマン)

1.
Aは、20〜23までの4こ。
Bは、30〜33までの4こ。
Cは、50〜53までの4こ。
Dは、70〜73までの4こ。
で、すべて素数だから、こと なるものをかけても重ならないので、44=256こ。




解答・その3

(ペンネ−ム:モルモット大臣)

1) 4×4 ×4 ×4=256
   256通り

2) まず11以上の素数は作れないので求める答は11,13,17と思いきや、各グループの N乗数(Nは4以上の整数) 2N, 3N, 5N, 7Nも作れないので、 この時17の手前の16=24が最初のこれにあたる。 よって求める答は11,13,16
答) 11,13,16

3) 最大数をNとすると大きいほうから1番目がNである。
よって大きい方から1番目,2番目,3番目,4番目.....と順にN/1,N/2,N/3,N/4.....
と表せる。また1から10まではすべて表せるので求める10番目の数はN/10
よってN/(N/10)=10
   答10




解答・その4

(ペンネ−ム:やなせ)

問い1の答え
A×B×C×Dで各4種類だから 
4×4×4×4=256通り←答え
同じ答えの積は有りませんでした、全て手作業で確認

問い2の答え
11 13 16←答え
13の次は17かなと思っていましたが2と8が同じグループなので 16はできません

問い3
MAXの積は8×27×125×343=9261000
そこで343は使用するものと考えて(深い説明はできませんが) A.B.Cそれぞれから1つずつ数を選び、それらを全て掛け合わせて 数を作り大きい方から10番目の数に343をかけると926100になります 9261000/926100=10
答えは10です




解答・その5

(ペンネ−ム:高橋 道広)

答え
(1) 256   (2) 11,13,16  (3) 10

解説
(1)
作られる数は2a×3b×5c×7dの形で 0≦a,b,c,d≦3
a,b,c,dはそれぞれ4通りの場合の数であるから、
4×4×4×4=256

(2)
(1)からわかるように素因数分解して、2,3,5,7以外の素因数 を持つ数を考えることになる。つまり11,13,17,19…の倍数を 考える事になる。 よって 11,13,17 と思うでしょ。 しか〜し 23までしかだめなんですよね。 ということで11,13,16が答えなのでした。 一度 ひっかかってしまいました。やられた〜っ。

(3)
一番大きな数を10番目に大きな数で割ると、作る事のできる 10番目に小さな数になる。
n番目に大きな数をa(n)と書くと i<jのとき a(i)<a(j) であり a(1)/a(i)>a(1)/a(j)となります。
a(1)/a(i)もまた作る事のできる数になっているからです。 そこで、小さい数で2,3,5,7のみを因数に持つ数を並べるとい いことになります。7より大きい一番小さい素数が11なので 1から10までは作る事ができますから答えは10になります。



解答・その6

(ペンネ−ム:文誠)

問 1.
   4x4x4x4=256     答 256通り

問 2.
   A の数字は2のゼロ乗から3乗までの数、
   B の数字は3のゼロ乗から3乗までの数、
   C の数字は5のゼロ乗から3乗までの数、
   D の数字は7のゼロ乗から3乗までの数 である
従ってこれら 2,3,5,7の4つの数を因数としてもたない数を探すべく1から順番に検証していくと  11、 13、 16が見つかる。
   答 11 13 16

問 3
この問題は問2と関連している。10までの数は作れるのだから
   73X52X33X22
が10番目に大きい数である。これは最大数の1/10 従って  答 10



解答・その7

(ペンネ−ム:kirkland)

問1
  作られる整数は、2×3×5×7 (p、q、r、sは0以上3以下の整数)と表され、 2,3,5,7は互いに素なので、4256通り

問2
2,3,5,7のすべてと互いに素な数の倍数は表せない。
   11の倍数、13の倍数、17の倍数、19の倍数、……
また、p≦3より16(=2)の倍数も表せない。
同様に、81の倍数、625の倍数、2041の倍数も表せない。
このような数を小さい方から3つ挙げると、11、13、16

問3
作ることのできる整数はすべて、最大の数2×3×5×7の約数なので、最大の数を10番目に大きい数で割ると、10番目に小さい数になる。
従って、10




解答・その8

(ペンネ−ム:Banyanyan)

X=2×2×2×3×3×3×5×5×5×7×7×7 とおくと、これは、Xの約数の問題です。

問1
Xの約数の個数
  4×4×4×4=256個(通り)

問2
以下の数はXの約数ではない。
  7より大きい素数
  2を4回以上かけた数とその倍数
  3を4回以上かけた数とその倍数
  5を4回以上かけた数とその倍数
  7を4回以上かけた数とその倍数
 実際に書き出してみると、

××× ×・・・
10 1112 1314 1516 1718 ・・・

よって、
  11、13、16

問3
問2で見たように、もっとも小さい約数は1、 10番目に小さい約数は10であるから、
 もっとも大きい約数はXそのものである。
 ここで10番目に大きい約数をYとすると、10×Y=Xとなるから、
  X÷Y=10




解答・その9

(ペンネ−ム:kiyo)

問1.全部で何通りの数ができますか。
   4×4×4×4=256
                 256通り。

問2.1以上の整数1、2、3・・・のうち、作れない数を小さい方から順に3つ答 えなさい。
    11、13、16




解答・その8

(ペンネ−ム:勝浦捨てる造)

A群
B群
C群
D群

まず与えられた表をこのように書き改めてみると条件通りに作ることのできる
  最大数は、2・3・5・7=9261000
  最小数は、2・3・5・7=1
その他の数も2、3、5、7から成り立っているから結局作ることのできる数はすべて最大数 2・3・5・7の約数になっている。 (但し1および最大数自身も約数と考える)
ところで正の整数Aの素因数分解が、
A=pα・qβ・・・rγとすれば、 Aの約数は p・q・・・rの形になる。
ここで、s、t、・・・uはそれぞれ
0≦s≦α、0≦t≦β、0≦u≦γを満たす任意の整数です。
Aの約数は、ただ1通り p・q・・・r の形に表されるから、約数の個数は上の不等式を満たす整数の組(s、t、・・・u)の数に等しい。
s、t、・・・uはそれぞれ1+α、1+β、・・・、1+γ個の値をとる。
従って場合の数の積の法則により求める約数の数は、
(1+α)(1+β)・・・(1+γ)になる。
以上から(1)で求める数は、9261000=2・3・5・7から
(1+3)(1+3)(1+3)(1+3)=256
     答  256通り

(2)作ることのできる数を小さい方から並べると

・3・5・7=1
・3・5・7=2
・3・5・7=3
・3・5・7=4
・3・5・7=5
・3・5・7=6
・3・5・7=7
・3・5・7=8
・3・5・7=9
・3・5・7=10
  11 できない(素数)
・3・5・7=12
  13 できない(素数)
・3・5・7=14
・3・5・7=15
  16 できない(2だから)
  17 できない(素数)
・3・5・7=18
  19 できない(素数)
・3・5・7=20
  ・・・
・3・5・7=(210)3

以上から、作れない数は、小さい方から
   11、13、16、17、19、・・・

(3)次に作ることのできる数を大きい方から並べると

・3・5・7 最大
・3・5・7 2番目に大きい
・3・5・7 3番目に大きい
・3・5・7 4番目に大きい
・3・5・7 5番目に大きい
・3・5・7 6番目に大きい
・3・5・7 7番目に大きい
・3・5・7 8番目に大きい
・3・5・7 9番目に大きい
・3・5・7 10番目に大きい
となるから、最大数÷10番目に大きい数は、
・3・5・7/ 2・3・5・7= 2・3・5・7=10

  答   10

(*)
ところでここでの10という数は、10番目に小さい数(約数)だから、
最大数2・3・5・7を10番目に 小さい数(約数)で割ると10番目に大きい数が出てくる。
と言うことは、2番目に小さい数に2番目に大きい数をかけても、 3番目に小さい数に3番目に大きい数をかけても、 4番目に小さい数に4番目に大きい数をかけても すべて最大数になるということか?
これを利用して大きい方の数を並べてみました。



解答・その11

(ペンネ−ム:ときん)

問1:
A,B,C,Dからそれぞれ4通りの選び方があるので

  4*4*4*4=256

ところでA,B,C,Dはそれぞれ2,3,5,7(素数)のべき乗なので、それぞれの 組み合わせで同じ数が2通り以上重なることはない。
よって256通りが答えである。

問2:
2,3,5,7と素数であることに着目すると、11,13,17,19・・・と候補に あがるので、11,13,17と答えそうだが、16=24なので16もこのルールで は作成することができない。よって11,13,16が答えである。

ちなみに、

1=1*1*1*1,2=2*1*1*1,3=1*3*1*1,4=4*1*1*1,5=1*1*5*1
6=2*3*1*1,7=1*1*1*7,8=8*1*1*1,9=1*9*1*1,10=2*1*5*1
11= × ,12=4*3*1*1,13= × ,14=2*1*1*7,15=1*3*5*1
16= × ,17= × ,18=2*9*1*1,19= × ,20=4*1*5*1

問3:
以下の法則に気づけば簡単。(これに気づくのが解けるかの鍵だと思う)

 小さい順大きい順小さい順*大きい順
11*1*1*123*33*53*738*27*125*343
22*1*1*122*33*53*738*27*125*343
31*3*1*123*32*53*738*27*125*343
 :::
102*1*5*122*33*52*738*27*125*343
 :::

一番大きい数を10番目に大きい数で割ると、10番目に小さい数 すなわち2*1*5*1=10が答えである。



解答・その12

(ペンネ−ム:巷の夢)

議論を分かり易くするため数を全て累乗で表す。

数 値
A20212223
B30313233
C50515253
D70717273

問1.
A〜Dのカテゴリー全てに4個の数値があるので、4×4×4×4=256

問2.
累乗に注意して数値表を見ていくと、1〜10の値はある事が分かる。 しかし、11はない。12は3×4で表中の数値で作ることが出来る。 13はない。14=2×7、15=3×5しかし、 16=1×16、2×8、4×4であり表中の数値では作れない。 因って作れない数値の小さい方から3番目は16である。

問3.
一番大きな数値は 23×33×53×73
次に大きな数値は2の累乗を一つ減らしたもの、 即ち、一番大きな数値の1/2、次は3の累乗を一つ減らした1/3、このように考えてくると、 順次1/4、1/5、と考えていけば良く、累乗数を減らすことにより連続的に1/10までの数値を作ること が出来る。この1/10が大きい順の10番目の数であるから、求める商は10である。



解答・その13

(ペンネ−ム:BossF)

問1.積は 2ax3bx5cx7d (a〜d=0,1,2,3) ですから
    4x4x4x4=256通り…答

問2.2、3、5、7以外の因数を持つか、又は2、3、5、7の4乗以上の因数 を持つものは作れませんから、小さい方から順に 11、13、16、17、19…
    答11、13、16

問3.(これは、まともに、10番目に大きい数を求めに行くと、 地獄になりそう…(^^;;、ということで楽な道へ進みます)
作ることのできる数のうちでいちばん大きい数を、 10番目に大きい数で割った数も 2ax3bx5cx7d (a〜d=0,1,2,3)の形になります。 さて積を小さい方から、書き出しますと 1、2、3、4、5、6、7、8、9、10、12、14… 最初の1は作ることのできる数のうちで1番大きい数を、それ自身で割った答 2は、作ることのできる数のうちでいちばん大きい数を、2番目に大きい数で割った答…ですから 求める数は 10…答 ■




解答・その14

(ペンネ−ム:夜ふかしのつらいおじさん)

問1 256通りです。
なぜならAは2、Bは3、Cは5、Dは7という素数のべき乗の形をして いるので組み合わせ方が違うと積が異なります。それぞれ4通りの場合があるので 4の4乗で答えがでます。

問2 11、13、16です。
7より大きな素数、11・13・17が候補になります。4乗の形をして いる16・81・625も候補になります。 また、2の4乗以上16・32・64も候補になります。 しかし、次のような表をつくれば明らかです。

n12 34 56 78 910 1112 1314 1516 1718 1920
A12 14 12 18 12 x4 x2 1x x2 x4
B11 31 13 11 91 x3 x1 3x x9 x5
C11 11 51 11 15 x1 x1 5x x1 x1
D11 11 11 71 11 x1 x7 1x x1 x1

問3 10です。
Aを8、Bを27、Cを125、Dを343でそれぞれ割ったものを考え ます。

A’は1/8、1/4、1/2、1です。
B’は1/27、1/9、1/3、1です。
C’は1/125、1/25、1/5、1です。
D’は1/343、1/49、1/7、1です。
A’、B’、C’、D’の中から1つを選んで掛けあわせたものは最大値 が1です。元の問題のままではなくて 1/(8・27・125・343) 倍に小さくして考えま す。こうすると分子は必ず1になります。だから大きな数を考えるのは分母が小さい ものを考えると言うことになります。そうすれば問2の表を分母の値としてそのま ま利用できます。表を読んで10番目に大きいのは1/10の場合になります。 だから答えは逆数をとって10です。




解答・その15

(ペンネ−ム:teki)

答え 1。256通り  2。11、13,16  3。10

<解法>

1は4×4×4×4=256通りです。

2は、ひっかけですね。2つめまでは、素数ですが、3つめは2の4乗=16がAグループ にないので、これは作れません。

3は、10番目に大きな数を探すと手間ですが、小さいほうから10番目の数を見つければ いいことに気がつけば、2が使えます。 つまり、作れない数の最小が11ですので、1から10までは作れることが解ります。 従って、最大の数を10番目に大きい数で割った結果は、10となります。



解答・その16

(ペンネ−ム:VILL)

問1
Aには2の,Bには3の,Cには5の,Dには7の累乗の数がありますね。 どんな選び方をしても4つの数は互いに素ですから,同じ数はできません。 A,B,C,Dそれぞれから4通りの選び方がありますから,
  4×4×4×4=256(通り)
です。多分。

問2
題意を満たす数は,2,3,5,7と互いに素か,または2,3,5,7の4乗以上 を因数に持つ数であればよいので, 小さい方から考えると,
  11,13,16
です。多分。

問3
最大数は
  8×27×125×343
ですね。じゃあ2番目にできる大きい数は? 与えられた数の中で,1を除いて最小の因数が2ですから,
  (最大数)÷2
ですね。この2は2番目にできる小さい数でもあります。 じゃあ3番目は?…同様に,
  (最大数)÷3
です。この3は3番目にできる小さい数です。 このパターンを考えると,
  (n番目にできる大きい数)=(最大数)÷(n番目にできる小さい数)
となっています。(nは256までの自然数です。)ということは,
  (10番目にできる大きい数)=(最大数)÷(10番目にできる小さい数)
なので,
  (最大数)÷(10番目にできる大きい数)=(10番目にできる小さい数)
ですね。さて,じゃあ10番目にできる小さい数は?
問2を見ますと,作ることのできない最小の数が11ですから10までは作れること がわかっています。 つまり,10番目に小さい数は10です。ですから答は10です。多分。



解答・その17

(ペンネ−ム:仮面X)

問1.
4×4×4×4=256。
   (答え}256通り。

問2.
1=1×1×1×1〜10=1×1×2×5は全部つくれます。
11=1×11はダメ、12=1×1×3×4,13=1×13はダメ、
14=1×1×2×7、15=1×1×3×5,16=2×2×2×2はダメ。
   (答え)11,13,16。

問3.
1番大きい数は8×27×125×343。
2番目は4×27×125×343=8×27×125×343÷2、
3番目は8×9×125×343=8×27×125×343÷3、
・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・、
10番目は4×9×25×343=8×27×125×343÷(2×5)。
より、(1番)÷(10番)=2×5=10。
   (答え)10。




解答・その18

(ペンネ−ム:AK)

1.ABCDそれぞれ4通りの選び方があるから、
   4×4×4×4=256通り。

2.ABCDそれぞれは素数{2・3・5・7}について排反なので {2・3・5・7}以上の素数を述べれば良い。また、これらの素数の4乗以上の数は作れない. ここから、答えは11・13・16。

3.一番大きい数は210の3乗。10番目に大きい数を探す。 ABCDの数字からは、1〜10までの数字はすべて作れるので 10番目に大きい数は一番大きい数を10で割ることで作ることが出来る。 つまり、一番大きい数を10番目に大きい数で割ると、10が残る。



解答・その19

(ペンネ−ム:yokodon)

題意の数は、2a・3b・5c・7d (a,b,c,d はいずれも整数で 0 ≦ a,b,c,d ≦ 3 )と表せます。これをもとにして、議論を進めます。

(1)(a,b,c,d) の可能な組み合わせの総数ですから、44 = 256 通り。…(答)

(2)上記のように表現できない数ですから、2、3、5、7 のいずれとも互いに素な自 然数、又は a, b, c, d を4以上まで広げれば上記のように表せる数です。それを小 さい方から数え上げて、求める3つの数は 11,13,16 …(答)

(3)N = 23・33・53・73とおく。
一連の数のうち、最大値は N で、10 番目に大きい数は N/10 である(∵2,3,5,7 各3個から適宜取り出す組み合わせで、1 から 10 まで作ることが出来る。そして、 1 で割ったもの、2 で割ったもの、...がそれぞれ 1 番目、2 番目、...に大きい数 となり、10 番目まで同様である)。
よって、題意のわり算の答えは、N/(N/10) = 10 …(答)



解答・その20

(ペンネ−ム:Mit)

今月の問題はプログラムを書いてみました。
実行結果とソースは以下の通りです。

問1:256通り
問2:11, 13, 16
問3:10

import java.util.Arrays;

public class Question_9{
  
  public static void main(String[] args){
    
    int[]
      array_2 = {1, 2, 4, 8},
      array_3 = {1, 3, 9, 27},
      array_5 = {1, 5, 25, 125},
      array_7 = {1, 7, 49, 343},
      
      array;
    
    int
      count = 0,
      array_size = array_2.length * array_3.length * array_5.length * array_7.length;
    
    array = new int[array_size];
    
    for( int n1 = 0; n1 < array_2.length; n1++ )
    for( int n2 = 0; n2 < array_3.length; n2++ )
    for( int n3 = 0; n3 < array_5.length; n3++ )
    for( int n4 = 0; n4 < array_7.length; n4++ )
      array[count++] = array_2[n1] * array_3[n2] * array_5[n3] * array_7[n4];
    
    Arrays.sort(array);
    
    System.out.println("問1:" + array_size + "通り");
    System.out.println("問2:" + ans2(array));
    System.out.println("問3:" + array[array_size - 1] / array[array_size - 10]);
    
  }
  public static String ans2(int[] array){
    
    String str = "";
    
    weekend:
    for( int x = 0, y = 0, z = 0; x < array.length - 1; x++ ){
      
      for( int p = 1; p < (y = array[x + 1] - array[x]); p++ ){
        
        str += array[x + 1] - (y - p) + ", ";
        z++;
        if( z >= 3 ) break weekend;
        
      }
      
    }
    
    return str;
    
  }
}




解答・その21

(ペンネ−ム:浜田 明巳)

問1.出来上がる数は,
  2a×3b×5c×7d, a〜dは3以下の非負整数となる.
a〜dの選び方は,それぞれ4通りずつなので,全部で44=256通りとなり, これが答である.

問2.1より大きく,2,3,5,7を因数としない数か, あるいは24,34,54,74を因数とする数を,小さい方から選べばよいので,
  11,13,16
の3つである.

問3.大きな数から書き並べると,
  一番大きな数,一番大きな数÷二番目に小さな数,一番大きな数÷三番目に小さな数,・・・
となる.故に,答は十番目に小さな数の10である

<別解>

問1.256

問2.11,13,16

問3.10

エクセルのマクロ
Option Explicit
Sub Macro1()
    Sheets("Sheet1").Select
    Dim A(4) As Long
    Dim B(4) As Long
    Dim C(4) As Long
    Dim D(4) As Long
    Dim seki(256) As Long '4^4=256
    Dim j1 As Integer
    Dim j2 As Integer
    Dim j3 As Integer
    Dim j4 As Integer
    Dim kotae1 As Integer
    Dim kotae2 As Integer
    Dim dame As Integer
    A(1) = 1
    B(1) = 1
    C(1) = 1
    D(1) = 1
    For j1 = 2 To 4
      A(j1) = A(j1 - 1) * 2
      B(j1) = B(j1 - 1) * 3
      C(j1) = C(j1 - 1) * 5
      D(j1) = D(j1 - 1) * 7
    Next j1
    kotae1 = 0
    For j1 = 1 To 4
      For j2 = 1 To 4
        For j3 = 1 To 4
          For j4 = 1 To 4
            kotae1 = kotae1 + 1
            seki(kotae1) = A(j1) * B(j2) * C(j3) * D(j4)
          Next j4
        Next j3
      Next j2
    Next j1
    For j1 = 1 To 256 - 1
      For j2 = j1 + 1 To 256
        If seki(j1) > seki(j2) Then
          Cells(1, 1).Value = seki(j1)
          seki(j1) = seki(j2)
          seki(j2) = Cells(1, 1).Value
        End If
      Next j2
    Next j1
    j1 = 1
    While j1 < kotae1
      If seki(j1) = seki(j1 + 1) Then
        For j2 = j1 + 1 To kotae1 - 1
          seki(j2) = seki(j2 + 1)
        Next j2
        kotae1 = kotae1 - 1
      Else
        j1 = j1 + 1
      End If
    Wend
    Cells(1, 1).Value = kotae1
    Range("A1").Select
    For j1 = 1 To kotae1
      Cells(j1, 2).Value = seki(j1)
    Next j1
    kotae2 = 0
    j1 = 1
    While kotae2 < 3 And j1 <= seki(kotae1)
      dame = 0
      j2 = 1
      While dame = 0 And j2 <= kotae1
        If j1 = seki(j2) Then
          dame = 1
        Else
          j2 = j2 + 1
        End If
      Wend
      If dame = 0 Then
        kotae2 = kotae2 + 1
        Cells(kotae2 + 2, 1).Value = j1
      End If
      j1 = j1 + 1
    Wend
    If kotae1 >= 10 Then
      Cells(7, 1).Value = Cells(kotae1, 2).Value / Cells(kotae1 - 9, 2).Value
    End If
End Sub




正解者

kiyo モルモット大臣 夜ふかしのつらいおじさん
teki スモークマン 巷の夢
浜田 明巳 AK yokodon
BossF やなせ VILL
仮面X ときん テモ
Mit 勝浦捨てる造 高橋 道広
文誠 kirkland Banyanyan





まとめ

今回はたくさんの方から解答を寄せていただきました。 初めてという方も何人かいらっしゃいまして、大変ありがたいことだとうれしく思っています。 これをご縁にこれからもよろしくお願いします。
さて今回の問題ですが、案外2番でひっかかってしまった方がいらっしゃいましたね・・・、私もそのうちの一人です。”素数”に目がくらんで、「16」を見落としてしまうのです・・・。何人かの方がやっておられるように、早とちりせずにきちんと検証しないといけませんね。
3番については、「N番目に小さい数と、N番目に大きい数との積は常に 最大数 23×33×53×73である」 ということに気づけば、簡単ですね。







E-mail 戻る top