มดซึ่งมีขนาดเล็กมากๆ เดินด้วยอัตราเร็วคงที่ 1 มม.ต่อวินาที อยู่บนเส้นเชือกตึงยาว แต่เมื่อมดเดินไปเจอกับมดตัวอื่น หรือที่สุดสาย มดตัวนั้นจะหันหน้ากลับไปด้านตรงข้ามและเริ่มเดินต่อไปทันที ด้วยอัตราเร็วคงที่
เรามีข้อมูลว่า มดแต่ละตัวจะอยู่ ณ ตำแหน่งใดและหันหน้าไปทางใดในตอนเริ่มต้น โดยมดแต่ละตัวจะถูกทำเครื่องหมายไว้ด้วยตัวเลข 1, 2, 3, …, N (รวมทั้งสิ้น N ตัว) ไม่มีมดสองตัวใด ที่อยู่ที่ตำแหน่งเดียวกันที่เวลาเริ่มต้น
โจทย์
จงเขียนโปรแกรมที่คำนวณหาตำแหน่งของมดแต่ละตัว ณ เวลาที่กำหนดให้ค่าหนึ่ง
ข้อมูลนำเข้า
บรรทัดแรก มีจำนวนเต็มสองจำนวนคือ L (ความยาวของเชือกหน่วยเป็นมม.) และ T (เวลาในหน่วยวินาที) โดยที่ 2 ≤ L ≤ 200,000 และ 1 ≤ T ≤ 1,000,000 ซึ่งจะคั่นด้วยช่องว่างหนึ่งช่อง
บรรทัดที่สอง มีจำนวนเต็ม N (จำนวนของมด) โดยที่ 1 ≤ N ≤ 70,000 และ N < L
จากนั้นอีก N บรรทัด ระบุตำแหน่งเริ่มต้น และ ทิศทางของมดแต่ละตัว ด้วยจำนวนเต็มหนึ่งจำนวน เป็นระยะทางจากปลายซ้ายสุดของเชือก (มม.) และอักษร ‘L’ หรือ ’D’ แทนมดที่เริ่มต้นหันไปทางซ้าย และขวา ตามลำดับ โดยตำแหน่งของมดจะถูกเรียงลำดับจากซ้ายไปขวา ตามหมายเลขของมด
ข้อมูลส่งออก
บรรทัดเดียว ระบุตำแหน่ง(ระยะทางจากปลายซ้ายสุด)ของมดแต่ละตัว จากตัวที่ 1 ถึงตัวที่ N แต่ละตัวคั้นด้วยช่องว่าง 1 ช่อง
ที่มา: Croatian Olympiad in Informatics 2004
ตัวอย่างข้อมูลนำเข้า | ตัวอย่างข้อมูลส่งออก |
3 5
1
1 D | 0 |
5 5
2
2 D
4 L | 1 3 |
8 10
5
1 L
3 L
4 D
6 L
7 D | 1 2 4 7 7 |
ความช่วยเหลือ: ไม่มีคำใบ้สำหรับปัญหานี้