ระยะทางแก้ไข Levenshtein ระหว่างสองสายคือจำนวนที่น้อยที่สุดที่เป็นไปได้ของการแทรกการลบหรือการแทนที่เพื่อแปลงหนึ่งคำเป็นคำอื่น ในกรณีนี้การแทรกการลบและการแทนที่แต่ละรายการมีค่า 1
ตัวอย่างเช่นระยะห่างระหว่าง
roll
และrolling
คือ 3 เนื่องจากการลบมีค่าใช้จ่าย 1 และเราต้องลบ 3 ตัวอักษร ระยะห่างระหว่างtoll
และtall
คือ 1 เนื่องจากการทดแทนมีค่าใช้จ่าย 1
งานของคุณคือการคำนวณความแตกต่างในการแก้ไข Levenshtein ระหว่างสตริงอินพุตและแหล่งที่มาของคุณ นี่คือแท็กควินดังนั้นโกง quines (ตัวอย่างเช่นการอ่านรหัสต้นฉบับของคุณ) จะไม่ได้รับอนุญาต
กฎระเบียบ
อินพุตจะไม่ว่างเปล่าและจะประกอบด้วย ASCII ยกเว้นว่าที่มาของคุณมีไม่ใช่ ASCII ซึ่งในกรณีนี้อินพุตอาจมี Unicode ไม่ว่าระยะทาง Levenshtein จะถูกวัดเป็นอักขระไม่ใช่ไบต์
เอาต์พุตเป็นระยะทางแก้ไข Levenshtein ขั้นต่ำของอินพุตและแหล่งที่มาของคุณ
นี่คือcode-golfดังนั้นคำตอบที่สั้นที่สุดเป็นไบต์ชนะ