ฉันมีห้องหนึ่งร้อยห้องแต่ละห้องอยู่ในห้องเดียวกัน ห้องนิรภัยแต่ละห้องมีรหัสผ่านซึ่งประกอบด้วยหมายเลขเดียว
95 43 81 89 56 89 57 67 7 45 34 34 78 88 14 40 81 23 26 78 46 8 96 11 28 3 74 6 23 89 54 37 6 99 45 1 45 87 80 12 92 20 49 72 9 92 15 76 13 3 5 32 96 87 38 87 31 10 34 8 57 73 59 33 72 95 80 84 11 4 11 11 37 71 77 91 49 21 52 48 43 11 77 52 64 3 3 9 21 65 65 69 84 96 78 7 71 80 78 3 97
มันยากเกินไปที่จะจดจำรหัสผ่านทั้งหมดเหล่านี้และไม่ปลอดภัยที่จะเก็บรหัสผ่านไว้ในกระดาษ ทางออกเดียวที่ฉันนึกได้คือใช้โปรแกรมที่มีตัวอักษรหนึ่งร้อยตัว รหัสผ่านไปยังn
ห้องนิรภัยนั้นจะพบได้โดยการใช้n
อักขระตัวแรกของรหัสเป็นโปรแกรม
ดังนั้นตัวอักษรตัวแรกของโปรแกรมถ้าทำงานเป็นโปรแกรมด้วยตัวเอง, 95
เอาท์พุทต้อง 43
ตัวละครทั้งสองเป็นครั้งแรกโดยตัวเองส่งออกต้อง 97
ทั้งการส่งออกโปรแกรมต้อง
ฉันยอมรับว่านี่มันยากจริงๆ ดังนั้นจงทำให้ดีที่สุด พยายามทำให้โปรแกรมของคุณใช้งานห้องนิรภัยได้มากที่สุดและฉันจะจดจำรหัสผ่านที่เหลือ
กฎระเบียบ
- หากมีการเสมอกันผู้ชนะคือการส่งที่เร็วที่สุด
- ช่องโหว่มาตรฐานต้องห้าม ซึ่งรวมถึงการอ่านจากไฟล์อื่น ๆ หรือจากอินเทอร์เน็ต
- คุณมีตัวเลือกน้อยสำหรับรหัส:
- โปรแกรมเต็มรูปแบบซึ่งพิมพ์หมายเลขที่ถูกต้อง
- ฟังก์ชั่นที่คืนหรือพิมพ์
- นิพจน์ที่ประเมินค่ามัน (เช่นใน C,
4+3
ประเมินค่าให้7
)
- คุณอาจถือว่าสภาพแวดล้อม REPL
- คุณอาจจะ
n
ใช้เทคนิคที่แตกต่างกันสำหรับค่าของแต่ละ ตัวอย่างเช่นคุณสามารถใช้ภาษาที่แตกต่างกันสำหรับแต่ละn
หรือบางครั้งใช้โปรแกรมเต็มรูปแบบและบางครั้งฟังก์ชั่น
หมายเหตุ: สถานการณ์สมมตินี้เป็นเรื่องสมมติอย่างสมบูรณ์ หากคุณมีปัญหาที่คล้ายกันอย่าโพสต์รหัสผ่านของคุณออนไลน์
The only solution I can think of is to use a program with exactly one hundred characters.
นี่หมายความว่าทุกโปรแกรมจะต้องมีความยาว 100 ตัวอักษรหรือไม่