入力として2つの整数を取るプログラムを作成します。最初の整数は任意の整数で、2番目の数値は最初の数値の桁数以下です。これらの数字aをbそれぞれとしましょう。
プログラムは次のことを行います
- の最小桁数
1sを連結して、a桁数がaで割り切れるようにしbます。 aすべてのb数字に沿って分割します。- 各セクションの数字を乗算します。
- 製品を一緒に連結します(数値の1つがゼロの場合、連結します
0)。 - 厳密に
b数字より少ない数字が形成されるまで、このプロセスを繰り返します。これを出力として印刷し、プロセスの数を繰り返します。単位は必要ありませんが、最終的な回数と反復回数の間の何らかの形式の分離が必要です。
次のテストケースでは、理解のために個々の手順を示しています。プログラムがステップを表示する必要はありません。
テストケース1
1883915502469, 3
手順
1883915502469 //Iteration 1
188391550246911
188 391 550 246 911
64 27 0 48 9
64270489 //Iteration 2
642704891
642 704 891
48 0 72
48072 //Iteration 3
480721
480 721
0 14
014 //Iteration 4
0
サンプル出力:0, 4
テストケース2
792624998126442, 4
手順
792624998126442 //Iteration 1
7926249981264421
7926 2499 8126 4421
756 648 96 32
7566489632 //Iteration 2
756648963211
7566 4896 3211
1260 1728 6
126017286 //Iteration 3
126017286111
1260 1728 6111
0 112 6
01126 //Iteration 4
01126111
0112 6111
0 6
06
サンプル出力:06, 4
次の場合、プログラムはエラーを返す必要があります(または単に何も出力しない)b>len(a)。また、b1に等しくすることはできません。そうしないと、プログラムは無限ループになります。
これはコードゴルフであるため、標準的な規則が適用されます。バイト単位の最短コードが優先されます。
完全なプログラムである必要がありますか、それとも機能は十分ですか?
—
Ypnypn
@Ypnypn完全なプログラム。
—
アークトゥルス
先行ゼロ
—
mbomb007
aは、出力の長さにカウントされ、出力にも含まれますか?
@ mbomb007はい、ただし初期番号のみ。製品の連結では、ゼロのチェーンは単一のゼロに短縮されます。
—
アークトゥルス
@ypnypn質問でそれを明示的に言ってください。タグwikiの「標準ルール」には、「次のデフォルト...回答は、完全なプログラムまたは機能(または同等のもの)のいずれかである可能性があります」と書かれています。
—
ジョシュアテイラー