คุณเป็นผู้ประกอบการทางรถไฟในสหรัฐอเมริกาในศตวรรษที่ 19 เมื่อรถไฟกลายเป็นที่นิยมเพราะเป็นวิธีที่มีประสิทธิภาพมากที่สุดในการขนส่งวัสดุจำนวนมากทางบก มีความต้องการระดับชาติสำหรับเส้นทางรถไฟจากชายฝั่งตะวันออกผ่านดินแดนอาณานิคมที่เพิ่งเกิดขึ้นทางทิศตะวันตก
เพื่อรองรับความต้องการนี้รัฐบาลสหรัฐฯกำลังจะเรียกเก็บภาษีเพื่ออุดหนุนทางรถไฟ พวกเขาสัญญาว่าจะจ่ายเงินให้กับ บริษัท รถไฟของคุณสำหรับการติดตามแต่ละไมล์ เนื่องจากการวางรางในพื้นที่ที่เป็นภูเขาและภูเขามีราคาแพงกว่าการวางรางในพื้นที่ราบพวกเขาจึงปรับจำนวนที่ให้ นั่นคือรัฐบาลจะจ่าย
- $ 5,000 ต่อไมล์ของแทร็กที่ถูกวางในพื้นราบ
- $ 12,500 ต่อไมล์ของแทร็คที่วางในดินแดนที่เป็นภูเขา
- $ 20,000 ต่อไมล์ของเส้นทางที่วางในภูเขา
แน่นอนว่าแผนนี้ไม่ได้สะท้อนถึงค่าใช้จ่ายจริง ๆ ในการวางรางรถไฟ
คุณได้จ้างนักทำแผนที่เพื่อวาดแผนที่โล่งอกของภูมิภาคที่คุณกำลังวางแผนเพื่อวิเคราะห์ระดับความสูง นี่คือแผนที่หนึ่งแผนที่:
S12321
121234
348E96
แต่ละหลักหมายถึงหนึ่งตารางไมล์ของที่ดิน S
เป็นจุดเริ่มต้นE
คือจุดสิ้นสุด แต่ละหมายเลขแสดงถึงความเข้มของการเปลี่ยนแปลงระดับความสูงในภูมิภาคนั้น
- ที่ดินเลขที่ 1-3 ถือเป็นที่ราบ
- เลข 4-6 ถือเป็นดินแดนที่เป็นภูเขา
- ที่ดินเลขที่ 7-9 ถือเป็นเทือกเขา
คุณมีประสบการณ์หลายปีในการสร้างรางรถไฟประเมินว่าค่าใช้จ่ายในการสร้างราง (เป็นดอลลาร์) เป็นไปตามสูตรนี้:
Cost_Per_Mile = 5000 + (1500 * (Elevation_Rating - 1))
นั่นหมายถึงการสร้างการไล่ระดับความสูงบางอย่างจะทำให้คุณเสียเงินมากกว่าที่รัฐบาลให้บางครั้งมันก็จะทำกำไรได้และบางครั้งคุณก็จะพังทลาย
ตัวอย่างเช่นหนึ่งไมล์ของแทร็กในการไล่ระดับความสูง 3 ค่าใช้จ่าย $ 8,000 ในการสร้าง แต่คุณจะได้รับเงินเพียง $ 5,000 เท่านั้นดังนั้นคุณจึงเสีย $ 3,000 ในทางตรงกันข้ามการสร้างหนึ่งไมล์บนทางลาดในระดับความสูง 7 มีค่าใช้จ่าย $ 14,000 แต่คุณจะได้รับเงิน 20,000 เหรียญ: กำไร 6,000 เหรียญ!
นี่คือแผนที่ตัวอย่างเช่นเดียวกับเส้นทางสองเส้นทางที่แตกต่างกัน
S29 S#9 S##
134 1#4 1##
28E 2#E 2#E
เส้นทางแรกราคา 30,000 ดอลลาร์เพื่อสร้าง แต่รัฐบาลจ่ายเงินให้คุณ $ 30,000 คุณไม่ทำกำไรจากแทร็กนี้
ในทางกลับกันราคาที่สองมีมูลค่า $ 56,500 สำหรับการสร้าง แต่คุณจะได้รับรายได้ $ 62,500 คุณได้กำไร $ 6,000 จากการติดตามนี้
เป้าหมายของคุณ:ให้แผนที่บรรเทาค้นหาเส้นทางที่ทำกำไรได้มากที่สุด (หรืออาจเป็นเพียงเส้นทางที่ราคาถูกที่สุด) ตั้งแต่ต้นจนจบ หากหลายเส้นทางเชื่อมโยงกันหนึ่งในนั้นคือทางออกที่ยอมรับได้
รายละเอียดโปรแกรม
คุณจะได้รับการป้อนข้อความแยกด้วยแผนที่รูปสี่เหลี่ยมของตัวเลขและจุดเริ่มต้นและจุดสิ้นสุดหนึ่งจุด แต่ละหมายเลขจะเป็นจำนวนเต็มรวมระหว่าง 1 ถึง 9 นอกเหนือจากนั้นอาจมีการป้อนข้อมูลตามที่คุณต้องการภายในเหตุผล
เอาต์พุตควรอยู่ในรูปแบบเดียวกับอินพุตพร้อมหมายเลขที่แทร็กถูกสร้างขึ้นแทนที่ด้วยแฮช ( #
) เนื่องจากกฎเกณฑ์ที่กำหนดโดยนักการเมืองบางคนตามอำเภอใจแทร็กจึงสามารถไปในเส้นทางแนวนอนหรือแนวตั้งเท่านั้น กล่าวอีกนัยหนึ่งคือคุณไม่สามารถย้อนรอยหรือย้อนแนวทแยงมุมได้
โปรแกรมควรสามารถแก้ปัญหาได้ในเวลาที่เหมาะสม (เช่น <10 นาที) สำหรับแผนที่ที่มีขนาดไม่เกิน 6 แถวและ 6 คอลัมน์
นี่คือความท้าทายของรหัสกอล์ฟดังนั้นโปรแกรมที่สั้นที่สุดชนะ
ผมมีตัวอย่าง (ที่ไม่แข็งแรงเล่นกอล์ฟ) การดำเนินงาน
ตัวอย่าง I / O
S12321
121234
348E96
S12321
######
3##E##
S73891
121234
348453
231654
97856E
S#3###
1###3#
3#####
######
#####E
4
อยู่134
ในแผนที่ตัวอย่าง6
หรือไม่