前書き
有限の小数桁がある場合、小数は終了します。たとえば、0.4(2/5)は10進数が1つあるため終了します。
小数は、無限の数の小数桁を持ち、繰り返しのある小数の部分の前に小数桁がない場合、純粋に周期的です。たとえば、0.142857142857142…(1/7)は、繰り返しがあるため純粋に周期的です。 142857、小数点の直後から繰り返し始めます。
小数は、無限の小数桁数を持ち、繰り返しのある小数部の前に有限数の小数桁がある場合、最終的には周期的です。たとえば、0.166666666666666…(1/6)は最終的に周期的です。繰り返し6は1の後に繰り返されます。
あなたのタスク
数値pとq(整数、0 <= p < q <= 100)が与えられたときに、p / qの 10進表現がが終了するか、純粋に周期的か、最終的に周期的かます。
あなたは出力しなければならないa
ことの終端であれば(すなわち0.1)を、b
それは純粋に定期だ場合(すなわち0.333 ...)、またはc
それは結局定期だ場合(すなわち0.166 ...)、どこa
、b
と、c
お好みのいずれかの明確な、定数文字列です。
テストケース
0/1 => Terminating
0/2 => Terminating
1/2 => Terminating
0/3 => Terminating
1/3 => Purely Periodic
2/3 => Purely Periodic
0/4 => Terminating
1/4 => Terminating
2/4 => Terminating
3/4 => Terminating
0/5 => Terminating
1/5 => Terminating
2/5 => Terminating
3/5 => Terminating
4/5 => Terminating
0/6 => Terminating
1/6 => Eventually Periodic
2/6 => Purely Periodic
3/6 => Terminating
4/6 => Purely Periodic
5/6 => Eventually Periodic
0/7 => Terminating
1/7 => Purely Periodic
2/7 => Purely Periodic
3/7 => Purely Periodic
4/7 => Purely Periodic
5/7 => Purely Periodic
6/7 => Purely Periodic
0/8 => Terminating
1/8 => Terminating
2/8 => Terminating
3/8 => Terminating
4/8 => Terminating
5/8 => Terminating
6/8 => Terminating
7/8 => Terminating
0/9 => Terminating
1/9 => Purely Periodic
2/9 => Purely Periodic
3/9 => Purely Periodic
4/9 => Purely Periodic
5/9 => Purely Periodic
6/9 => Purely Periodic
7/9 => Purely Periodic
8/9 => Purely Periodic
0/10 => Terminating
1/10 => Terminating
2/10 => Terminating
3/10 => Terminating
4/10 => Terminating
5/10 => Terminating
6/10 => Terminating
7/10 => Terminating
8/10 => Terminating
9/10 => Terminating
0/11 => Terminating
1/11 => Purely Periodic
2/11 => Purely Periodic
3/11 => Purely Periodic
4/11 => Purely Periodic
5/11 => Purely Periodic
6/11 => Purely Periodic
7/11 => Purely Periodic
8/11 => Purely Periodic
9/11 => Purely Periodic
10/11 => Purely Periodic
0/12 => Terminating
1/12 => Eventually Periodic
2/12 => Eventually Periodic
3/12 => Terminating
4/12 => Purely Periodic
5/12 => Eventually Periodic
6/12 => Terminating
7/12 => Eventually Periodic
8/12 => Purely Periodic
9/12 => Terminating
10/12 => Eventually Periodic
11/12 => Eventually Periodic
0/13 => Terminating
1/13 => Purely Periodic
2/13 => Purely Periodic
3/13 => Purely Periodic
4/13 => Purely Periodic
5/13 => Purely Periodic
6/13 => Purely Periodic
7/13 => Purely Periodic
8/13 => Purely Periodic
9/13 => Purely Periodic
10/13 => Purely Periodic
11/13 => Purely Periodic
12/13 => Purely Periodic
0/14 => Terminating
1/14 => Eventually Periodic
2/14 => Purely Periodic
3/14 => Eventually Periodic
4/14 => Purely Periodic
5/14 => Eventually Periodic
6/14 => Purely Periodic
7/14 => Terminating
8/14 => Purely Periodic
9/14 => Eventually Periodic
10/14 => Purely Periodic
11/14 => Eventually Periodic
12/14 => Purely Periodic
13/14 => Eventually Periodic
0/15 => Terminating
1/15 => Eventually Periodic
2/15 => Eventually Periodic
3/15 => Terminating
4/15 => Eventually Periodic
5/15 => Purely Periodic
6/15 => Terminating
7/15 => Eventually Periodic
8/15 => Eventually Periodic
9/15 => Terminating
10/15 => Purely Periodic
11/15 => Eventually Periodic
12/15 => Terminating
13/15 => Eventually Periodic
14/15 => Eventually Periodic
すべてのテストケースはこちらで見つけることができます。
出力には独自の3つの値を選択できますが、どの値であるかを明確にする必要があります。
覚えておいて、これはコードゴルフですであるため、バイト数が最小のコードが優先されます。
ヒント
終了:
最も単純な形式の終端小数の分母の素因数分解は、2と5のみで構成されます。
純粋に周期的:
最も単純な形式の純粋に周期的な10進数の分母の素因数分解には、2または5は含まれません。
最終的に定期的:
最終的に周期的な10進数の分母の最も単純な形式の素因数分解には、少なくとも1つの2または5が含まれますが、他の数値も含まれます。
リーダーボード
これは、通常のリーダーボードと言語ごとの勝者の概要の両方を生成するスタックスニペットです。
回答が表示されるようにするには、次のマークダウンテンプレートを使用して、見出しから回答を開始してください。
# Language Name, N bytes
N
提出物のサイズはどこですか。スコアを改善する場合、古いスコアを打つことで見出しに残すことができます。例えば:
# Ruby, <s>104</s> <s>101</s> 96 bytes
ヘッダーに複数の数字を含める場合(たとえば、スコアが2つのファイルの合計であるか、インタープリターフラグペナルティーを個別にリストする場合)、実際のスコアがヘッダーの最後の数字であることを確認します。
# Perl, 43 + 2 (-p flag) = 45 bytes
言語名をリンクにして、リーダーボードスニペットに表示することもできます。
# [><>](http://esolangs.org/wiki/Fish), 121 bytes