Rosetta Stone Challenge: การแม็ปยีน
เป้าหมายของการท้าทาย Rosetta Stone คือการเขียนวิธีแก้ปัญหาในภาษาต่างๆให้ได้มากที่สุด แสดงการเขียนโปรแกรมได้หลายภาษาของคุณ! ความท้าทาย ความท้าทายของคุณคือการใช้โปรแกรมที่จะทำแผนที่ยีนโดยใช้ความถี่ข้ามมากกว่าที่เป็นหลายภาษาการเขียนโปรแกรมที่เป็นไปได้ คุณได้รับอนุญาตให้ใช้ฟังก์ชั่นไลบรารีมาตรฐานทุกประเภทที่ภาษาของคุณมีเนื่องจากนี่เป็นการนำเสนอภาษาเป็นส่วนใหญ่ "การแม็ปยีนคืออะไร" การทำแผนที่ยีนเป็นกระบวนการของการค้นหาตำแหน่งสัมพัทธ์ของยีนในโครโมโซม สิ่งนี้ทำได้โดยการวัดความถี่การข้ามผ่านของคู่ของยีนเท่ากับร้อยละของลูกหลานที่คู่นั้นไม่ได้รับการถ่ายทอดร่วมกัน ระยะทางวัดในหน่วยแผนที่โดยมีหนึ่งหน่วยแผนที่เท่ากับหนึ่งเปอร์เซ็นต์ของการข้ามผ่าน ตัวอย่างเช่นหากยีน C & D มีความถี่ข้าม 11% แล้วยีน C คือระยะทาง 11 หน่วยแผนที่อยู่ห่างจากยีน D การทำแผนที่ยีนจะดำเนินการกับยีนหลายคู่เพื่อกำหนดลำดับญาติของพวกเขา ตัวอย่างเช่นข้อมูล(A,B,12) (D,B,7) (A,D,5) (D,H,2) (H,B,9)สร้างแผนที่ต่อไปนี้: A..H.D......B คุณอาจสังเกตเห็นว่าB......D.H..Aเป็นแผนที่ที่ถูกต้อง นี่เป็นเรื่องจริงเพราะไม่สามารถแยกแยะความแตกต่างระหว่างกระจกเงา โปรแกรมของคุณสามารถเลือกได้ว่าจะเอาท์พุทใด แม้ว่าอินพุตอาจไม่รวมทุกคู่ที่เป็นไปได้ แต่จะมีข้อมูลเพียงพอที่จะสร้างแผนที่ใหม่ทั้งหมด (ดังนั้นจะไม่มีเอาต์พุตที่ถูกต้องมากกว่า 2) นอกจากนี้ตัวเลขที่มักจะทำงานออก (ไม่เหมือนชีววิทยาจริง) (A,B,3) (B,C,4) (A,C,13)หมายความว่าคุณจะไม่ได้สิ่งที่ต้องการ อินพุต อินพุตจะเริ่มต้นด้วยตัวเลขnตามด้วยรายการของยีน (ตัวอักษรตัวพิมพ์ใหญ่) จากนั้นจะมีnข้อมูลสามส่วน แต่ละชุดจะประกอบด้วยยีนหนึ่งคู่และการข้ามผ่านความถี่ (ระยะทาง) 3,P,H,I …