회사의 보안 책임자는 PIN 생성 시스템이 제공된 후 PIN 생성 시스템에 대해 우려하고 있습니다 12345. 그는 또한 당신이 그의 비용으로 행한 Spaceballs 농담을 정말로 좋아하지 않았으므로 PIN 생성기를 다시 쓰도록 위임되었습니다. 특정 하드웨어에 맞아야하므로 가능한 작게 만들어야합니다.
당신의 작업
- PIN 수와 PIN 크기 (숫자)의 두 가지 입력을받습니다.
- 지정된 크기의 지정된 PIN 수를 임의로 생성하여 인쇄하십시오.
- 크기가 일정하지 않은 경우에도 유효한 모든 크기의 PIN을 인쇄 할 수 있어야합니다.
그러나 PIN에는 몇 가지 제한이 있습니다. 잘못된 PIN은 다음과 같습니다.
- 모든 쌍이 동일한 숫자 인 경우 :
114422(참고 : 분명히 모든 동일한 숫자 PIN이 포함됩니다). - 점점 선형적인 PIN (mod 10) :
246802. - 3 모든 그룹의 키패드에 물리적 라인이다
1 2 3;4 5 6;7 8 9;bksp 0 enter;:147369. - PIN은 규칙 1과 규칙 3의 그룹으로 완전히 나눌 수 있습니다.
- 모든 쌍이 동일한 숫자 인 경우 :
- 이것은 code-golf 이므로 바이트 단위의 가장 짧은 코드가 이깁니다!
@minxomat 좋은 점, 두 그룹을 모두 포함하는 규칙을 개정. 하반기부터는 하나
—
Maltysen
123이지만 55432괜찮을 것입니다.
규칙 3에 대각선이 포함됩니까?
—
Martin Ender
아이러니 한 점은 소위 "보안"핀에 대한 이러한 정의는 공격자가 강제로 무력화해야하는 핀의 수만 줄인다는 것입니다!
—
DankMemes
규칙 2의 최단 길이는 얼마입니까?
—
Dennis
55123있습니까?