シークレットスワッピングシーケンスの解決


12

これは挑戦です。警官のスレッドはこちらにあります

これは強盗スレッドです。ここでの仕事は、警官スレッドで提出物を受け取り、隠されたシーケンスを見つけようとすることです。有効なクラックであるそのシーケンスを計算するために元のコードに置き換えることができるシーケンスを見つけた場合。クラックが発生したときに警官に通知して、回答を更新できるようにしてください。

得点

スコアは、成功したクラックの数であり、より多くのクラックが改善されます。


強盗に警官スレッドのシーケンス番号をコメントさせないのはなぜですか?
リン

5
@Lynn強盗は解答を解く作業に賛成票を投じることができるはずだと思います。そのため、2スレッド形式の方が好きです。
ポストロックガーフハンター

回答:




4

Python 3、ppperry

A018226

元のコードでは、シーケンス名をコメントに入れています。コメントはおそらくコードに影響を与えないので、隠しシーケンスは元のシーケンスの一部である必要があると考えました。最初の2つの用語をすばやく検索すると、A018226が見つかりました。サブシーケンスであるため、コードは両方に対して機能します。振り返ると、A018226は元のシーケンスのページにもリストされます。

A018226でマジックナンバーシーケンスを一般化する1つの方法。


それが意図された解決策でした。シーケンスをコメントに入れることで、人々にそれを不可能だと思わせようとする考えがありました。
-pppery

@ppperryコメントはそれを与えたものでした:)。私はそれがサブシーケンスでなければならないと考えました。とにかく楽しい!
ポストロックガーフハンター

たぶん私はそれをもっと隠すことができたかもしれませんが、この種のことに対する典型的な答えと比べると、それでも面白いひねりです。コードではなく数字について。
-pppery





3

よくやった!何がそれを与えたのですか?
ბიმო

2
モジュラス演算は、生成されるシーケンスの数を制限します。この場合、8×9 = 72です。したがって、数式をスプレッドシートにプラグインし、それらすべてを生成しました。少数のシーケンスのみがすべての用語のすべての整数を生成し、それらのうち、すべての正の用語を含むシーケンスのみが対象であると推測しました。次に、シーケンスを検索し、参照番号を再び差し込む問題でした。検索された5つ、3つには対応するエントリがあり、3つ目はすべての入力の出力に一致しました。

私がで割っていなかった場合にのみ2、P
ბიმო




2

Python 3.6RootTwo

オリジナルはA001107で
割れたA005843

オンラインで試す

元の評価済みコード(コメントを除く)はn*2、クラックされたバージョンは4*n*n-n*3です。

構文エラー、宣言されていない変数、ゼロ除算などを除外した後、残りのリストを実行するのに時間がかかりませんでした。最初の数個の数字のみをチェックするため、手動で除外する必要がある誤検出(A004917など)がいくつかありましたが、あまり一般的ではありませんでした。

また、A040489はを計算しようとするn**3436485154-nため、少し遅くなりました。:P


おめでとうございます。それでおしまい。強引にそれをしましたか?いくつかの不正なシーケンスIDを有効にして、有効なPythonで速度を落とそうとしましたが、十分ではないと思います。
RootTwo

@RootTwo私はほとんどそれをブルートフォースしました。そこには他のヒューリスティックもありましたが、非常に複雑なものはありませんでした。数分かかって1107を見つけ、約8で約5843になりました。好奇心から50000になりました。その範囲には他に一致するものはありませんでした。15〜20%が有効なpythonだったと思います。
Phlarx

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.