チャレンジ:
がより小さい正の整数F(N) = 2^N + 1である関数を考えます。この関数で定義されるシーケンスは次のとおりです。N31
3, 5, 9, 17, 33, 65, 129, 257, 513, 1025, 2049, 4097, 8193, 16385, 32769, 65537, 131073, 262145, 524289, 1048577, 2097153, 4194305, 8388609, 16777217, 33554433, 67108865, 134217729, 268435457, 536870913, 1073741825
入力は次のように生成されます。
- 上記のシーケンスから5つの連続した整数を取得します。
- それらの1つを別の正の整数に置き換えます(上記のシーケンスの一部である場合とそうでない場合があります)。
- オプションで、結果の5つの数値を並べ替えます。
このような5つの整数のリストが与えられた場合、スワップインされたため、元の5つの連続した整数の一部ではないものを見つけます。
例:
- 元のサブリスト:
5, 9, 17, 33, 65。 - 1つを置き換えます
5, 7, 17, 33, 65。 - 再注文:
33, 17, 5, 7, 65。
予想される出力はになります7。
入力の5つの値は常に異なり、常に一意のソリューションがあります。(たとえば3, 9, 17, 33, 129、どちらか、3または129スワップインされた可能性があるような入力を処理する必要はありません。)
テストケース:
5,9,17,33,829
o/p: 829
9,5,17,829,33
o/p: 829
33, 17, 5, 7, 65
o/p: 7
5,9,177,33,65
o/p: 177
65,129,259,513,1025
o/p: 259
129,259,513,1025,65
o/p: 259
63,129,257,513,1025
o/p: 63
65,129,257,513,4097
o/p: 4097
5, 9, 2, 17, 33
o/p: 2
536870913, 67108865, 1073741825, 1, 268435457
o/p: 1
536870913,67108865,134217729,1,268435457
N = 30、入力値の1つとしてカバーするテストケースを追加することでした。