正の整数を指定すると、ペアで取得した数字で記述される新しい数字を作成できます(数字の奇数の場合は、先頭に0を追加します)。
例えば:
1234は1つ、2つ、3つの4として読み取ることができます。したがって、1234の出力は2444です。
643の桁数は奇数なので、先頭にゼロを追加して偶数にします。この場合、0643は次のように読み取ることができます:ゼロ6秒、4つの3秒。したがって、出力は3333になります。
(これはOEIS A056967です)。
タスク:正の整数の配列が与えられた場合、数字ペアで記述された値で昇順に並べ替えます。同じ値につながる入力番号の間で順序は関係ありません。
入力:正の整数の配列/リスト/セット。入力の先頭のゼロは許可されず、文字列/数字のリストなどとして入力されます。許可されていません-入力は、言語が使用できる限り整数/数値型に近いものでなければなりません。
出力:上記の方法でソートされた配列で、通常の方法(関数の戻り値/ STDOUT / voidへの叫びなど)で返されます。それらを個別に印刷し、数値、文字列、またはリストとして返すことができます。桁。
テストケース
Input
Output
[19, 91, 2345, 2023]
[19, 2023, 2345, 91]
[25257, 725, 91, 5219, 146125, 14620512]
[725, 5219, 14620512, 91, 146125, 25257]
[123130415 3335 91 111111111 528 88]
[528, 111111111, 123130415, 3335, 88, 91]
[1 21 33 4 5]
[1 4 5 21 33]
[3725, 10, 2537, 1, 1225, 2512]
[10, 1, 1225, 2512, 2537, 3725]
[125, 26, 1115, 1024]
[1115, 1024, 125, 26]
(4番目のテストケースでは、1、4、5はすべて0に評価されるため、任意の順序で相互に並べ替えることができます。同様に、5番目のテストケースでは、10と1の両方が0に評価されるため、いずれかの順序。)
(関連:表示内容を言う、One 1、Two 1's、One 2 One 1
サンドボックス内の質問を明確にする手助けをしてくれたKevin Cruijssenに感謝します。
strtoi
ためです-整数を返すため-正しいですか?もしそうなら、それは問題ありません、それはそのまま合法です。