1059 : SMS Thumb
Problem type : Batch
Time limit : 1.0 second(s)
Memory limit : 1 megabyte(s)

กำหนดปุ่มกดโทรศัพท์มือถือเป็นดังนี้

 

การกดปุ่มแต่ละครั้งตัวอักษรจะปรากฏวนกันไปตามจำนวนครั้งที่กดตามลำดับ (เฉพาะ ‘A’ - ‘Z’ ไม่มีตัวเลข) ตัวอย่างเช่น การกดปุ่ม 2 จะปรากฏตัวอักษร A B C A B … วนกันไป ถ้ากดปุ่มนี้จำนวน 5 ครั้งตัวอักษรที่ได้คือ B และถ้ากดปุ่ม 7 จำนวน 2 ครั้งจะได้ตัวอักษร Q เป็นต้น สำหรับปุ่มหมายเลข 1 จะเป็นการลบตัวอักษรที่พิมพ์ไปก่อนหน้านี้ ครั้งละ 1 ตัวอักษร หากไม่มีตัวอักษรเหลืออยู่ในข้อความการกดปุ่มนี้จะไม่ส่งผลใดๆ ทั้งสิ้น การเลื่อนนิ้วแต่ละครั้ง (ไปที่ปุ่มใหม่ หรือปุ่มเดิมก็ดี) จะนับเริ่มใหม่ที่ตัวอักษรตัวแรกของปุ่มนั้นเสมอ

 

คาวีสังเกตเห็นนารินกำลังกดปุ่มโทรศัพท์ เพื่อส่งข้อความ SMS ใน พริบตาแรก คาวีเห็นว่านารินเริ่มต้นกดที่ปุ่มไหน ก่อนที่นารินจะรู้ตัวว่าถูกแอบมอง จึงปลีกหลบพ้นสายตาคาวี อย่างไรก็ดีหลังจากนั้นคาวีก็ยังสามารถสังเกตเห็นได้ว่า นารินเลื่อนนิ้วไปทางไหน เพื่อ กดปุ่มถัดไป เช่น อยู่ทางซ้าย/ขวา หรือ บน/ล่าง เทียบกับปุ่มปัจจุบัน ไปกี่ปุ่ม จนกว่านารินจะพิมพ์ข้อความเสร็จ ตัวอย่าง เช่น ถ้าครั้งแรก นารินกดเลข 8 จำนวน 1 ครั้ง ซึ่งจะได้ตัวอักษร ‘T’ แล้วเลื่อนนิ้วไปทางขวา 1 ปุ่ม ขึ้นบน 1 ปุ่ม และกดปุ่มนั้น 6 ครั้ง แสดงว่านาริน กดเลข 6 ซึ่งจะได้ตัวอักษร ‘O’ ดังนั้นข้อความที่นารินกดอ่านได้เป็น “TO” จากแฟ้มข้อมูลการพิมพ์ SMS ที่คาวีสังเกตเห็น (นารินไม่เลื่อนนิ้วออกนอกแป้นตัวเลขเลย)

งานของคุณ
จงเขียนโปรแกรมหาข้อความที่นารินพิมพ์

 

ข้อมูลนำเข้า

ข้อมูลบรรทัดแรก จำนวนครั้งที่เลือกปุ่มกด N (1 ≤ N ≤ 80) จนพิมพ์ข้อความเสร็จ

ข้อมูลบรรทัดที่สอง ปุ่มแรกที่เลือกกด S (1 ≤ S ≤ 9) และจำนวนครั้งที่กด M (1 ≤ M ≤ 4096) คั่นด้วยช่องว่าง

ข้อมูลบรรทัดถัดมา N – 1 บรรทัด แต่ละบรรทัดจะประกอบด้วยตัวเลข 3 จำนวน จำนวนแรก แสดงทิศทางแนวนอน H จากปุ่มที่กดก่อนหน้านี้ จำนวนที่ 2 แสดงทิศทางแนวตั้ง V จากปุ่มที่กดก่อนหน้านี้ และ จำนวนที่ 3 แสดงจำนวนครั้งที่กดปุ่มนั้น (M) โดยจำนวนทั้งสามจะคั่นด้วยช่องว่าง

·           ทิศทางแนวนอน H ใน { –2, –1, 0, 1, 2 } โดยจำนวนลบแสดงการเลื่อนไป ทางซ้าย และจำนวนบวกแสดงการเลื่อนไป ทางขวา

·           ทิศทางแนวตั้ง V ใน { –2, –1, 0, 1, 2 } โดยจำนวนลบแสดงการเลื่อน ขึ้นบน และจำนวนบวกแสดงการเลื่อน ลงล่าง

·           ค่าสัมบูรณ์ของตัวเลขแสดงจำนวนปุ่มที่เลื่อนไปในทิศทางนั้นๆ ดังนั้น เลข 0 หมายถึงไม่มีการเลื่อนในแนวนั้น

 

ข้อมูลส่งออก

ข้อมูลบรรทัดเดียว แสดงข้อความที่พิมพ์ (ไม่มีการเว้นช่องว่าง) ถ้าไม่ได้พิมพ์อะไรเลยให้แสดงคำว่า null คำ

ที่มา: การแข่งขันคอมพิวเตอร์โอลิมปิกสอวน.ครั้งที่ 4 ปี 2551 วันที่ 1
ตัวอย่างข้อมูลนำเข้า ตัวอย่างข้อมูลส่งออก
4
5 3
1 0 3
-1 1 3
1 -2 2
LOVE
2
9 6
-2 -2 5
null
5
3 3
0 0 2
-2 0 1
2 1 3
0 1 2
FOX

ความช่วยเหลือ: ไม่มีคำใบ้สำหรับปัญหานี้

กำลังออนไลน์: 6 ผู้เยี่ยมชมและ 0 สมาชิก (0 บอท)