ใช้รหัสลับนี้
เป้าหมาย
ใช้อัลกอริทึม (อธิบายไว้ในส่วนอัลกอริทึม) เพื่อใช้ตัวเลขที่แน่นอน
โปรแกรมจะต้องอ่านอินพุตจาก STDIN หรือเทียบเท่าที่ใกล้เคียงที่สุดใช้อัลกอริทึมเพื่อสร้าง ciphertext และคีย์
ciphertext และคีย์จะถูกเขียนไปยัง STDOUT หรือเทียบเท่าที่ใกล้เคียงที่สุด อนุญาตให้ฟอร์แมตใดก็ได้ตราบใดที่มันยังออก ciphertext และกุญแจ
ขั้นตอนวิธี
แปลงอักขระในสตริงให้เป็นค่า ASCII ที่เกี่ยวข้อง ตัวอย่างเช่น:
Hello -> 72 101 108 108 111
ถัดไปคุณจะต้องสร้างคีย์ตราบเท่าที่สตริงที่มีตัวเลขสุ่มในช่วง 0-9
Hello -> 62841
เพิ่มจำนวนเต็มในลำดับตัวเลขสุ่มให้เป็นค่า ASCII ของสตริง ในตัวอย่างข้างต้น 72 จะกลายเป็น 78 และ 101 จะกลายเป็น 104
72 + 6 = 78, 101 + 2 = 103, 108 + 8 = 116, etc
ถัดไปแปลงค่าใหม่กลับเป็นอักขระ ในตัวอย่างข้างต้นข้อความได้กลายเป็นHello
Ngtpp
ตัวอย่าง
(นี่เป็นเพียงตัวอย่างของสิ่งที่เอาท์พุตอาจมีลักษณะเอาท์พุทสามารถและจะแตกต่างกันไป)
Hello World
Lfrlu)_supg
41606984343
This will be encoded
Zhjs$~koo gj$iuhofgj
60104723305544750226
กฎระเบียบ
- คุณสามารถสันนิษฐานได้ว่าการป้อนข้อมูลจะประกอบด้วยตัวอักษรในช่วง az, AZ และช่องว่างเท่านั้น
- ส่งจะต้องเป็นโปรแกรมหรือฟังก์ชั่นเต็มรูปแบบ
- ส่งจะได้คะแนนเป็นไบต์
- ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
- นี่คือรหัสกอล์ฟดังนั้นรหัสที่สั้นที่สุดชนะ
(นี่คือหนึ่งในความท้าทายครั้งแรกของฉันหากมีสิ่งผิดปกติเกิดขึ้นรู้สึกฟรีที่จะบอกฉันว่าฉันจะปรับปรุงมันได้อย่างไร)
preferably with the format (ciphertext)\n(key).
"คุณสมบัติที่ต้องการ" และโค้ดกอล์ฟไม่ค่อยเข้ากัน คุณควรกำหนดให้เป็นข้อบังคับหรืออนุญาตรูปแบบผลลัพธ์อื่น ๆ 3. ต้องพิมพ์รหัสโดยไม่มีช่องว่างหรือไม่ สิ่งที่เกี่ยวกับการพิมพ์ในรูปแบบรายการเช่น[0, 5, 2, ...]
?