Scenariusz
Używam ekranu blokady pasującego do wzoru i niestety zapomniałem o swoim wzorze. Chciałbym wiedzieć, ile czasu będę potrzebował, aby go odblokować. Oto specyfikacje ekranu blokady Google, którego użyjemy do tego wyzwania.
- Co 5 złych kodów użytkownik musi czekać
30 seconds
przed dalszym wprowadzaniem. Wzór musi przynajmniej składać się
4 points
(patrz poniżej)Punktu można użyć tylko raz, ale można go kilkakrotnie przejść (patrz zdjęcie poniżej):
Tutaj punkt środkowy jest używany tylko raz, nawet jeśli przejdziemy go ponownie dla tego konkretnego wzoru.
Hipoteza i fakty
Zakładamy, że jesteśmy superbohaterami i że możemy narysować dowolny wzór 1 second
, nigdy nie musimy jeść ani spać. Tak, jesteśmy nadludzkimi.
Jestem bardzo pechową osobą. „Scenariusz najgorszego przypadku” to moje codzienne życie, więc wzór, który spróbuję wykonać jako ostatni, będzie właściwy.
Co mamy do powiedzenia?
Dla tych, którzy go nie znają, Android (i inne telefony teraz) oferuje możliwość odblokowania telefonu poprzez narysowanie wzoru na 9-punktowej matrycy. Macierz tę można opisać następująco:
C(A) M(B) C(C)
M(D) X(E) M(F)
C(G) M(H) C(I)
- C oznacza „punkt narożny”
- M dla „punktu środkowego”
- X dla „punktu środkowego”
- Podałem identyfikatory punktów, aby ułatwić
Dopuszczalne połączenia bezpośrednie są następujące:
Punkt narożny:
Środkowy punkt:
Środek :
Jednak, jak zauważył Steveverrill, „gdy środek zostanie wykorzystany (a zatem stanie się niedostępny), bezpośrednie połączenie między lewym dolnym a prawym górnym rogiem staje się jednoznaczne i dlatego możliwe”. To samo dotyczy każdego „punktu środkowego”, jeśli np. Punkt B został już policzony, możliwe jest bezpośrednie połączenie między A i C. Jeśli np. F został już policzony, możliwe jest bezpośrednie połączenie między C i I. Itp...
Zasady
- Celem tego wyzwania jest zwrócenie ile czasu (w postaci czytelnej dla człowieka, czyli rok / dzień / miesiąc / godzina / cokolwiek znajdziesz) będę musiał odblokować ten cholerny telefon.
- Nie możesz zakodować na stałe liczby możliwych prawidłowych wzorców (nawet go nie Google, oszukasz), obliczyć (to właściwie jest fajna część, prawda?)
- Najkrótszy fragment kodu wygrywa
- Powodzenia !