ให้ถนนศิลปะและเวลาที่ฉันต้องข้ามมันบอกฉันว่าฉันกำลังเร่ง
หน่วย
d
ระยะทางที่อยู่ในหน่วยโดยพลการของ t
เวลาที่อยู่ในหน่วยโดยพลการของ
ถนน
นี่คือถนนที่เรียบง่าย:
10=====
10
หมายถึง 10 ต่อd
t
นั่นคือขีด จำกัด ความเร็วสำหรับถนน ถนนมี 5 =
วิดังนั้นมันd
คือ 5 ดังนั้นหากฉันข้ามถนนนั้นใน 0.5 t
ฉันไป 10 d
ต่อt
เพราะ 5 / 0.5 = 10 ขีด จำกัด ความเร็วของถนนนั้นคือ 10 ดังนั้นฉันจึงอยู่ในขีด จำกัด ความเร็ว
แต่ถ้าฉันข้ามถนนนั่นเป็น0.25 t
ฉันไป 20 d
ต่อt
เพราะ 5 / 0.25 = 20 ขีด จำกัด ความเร็วของถนนนั้นคือ 10 ดังนั้นฉันจึงไป 10 เกินขีด จำกัด ความเร็ว
ตัวอย่างและการคำนวณ
โปรดทราบว่าอินพุต 1 คือเวลาที่ฉันเดินทางไปถนนและอินพุต 2 คือถนน
นี่คือถนนที่ซับซ้อน:
Input 1: 1.5
Input 2: 5=====10=====
ที่เร็วที่สุดฉันจะได้ (ตามกฎหมาย) ไปบนถนนสายแรก (ครั้งแรก 5 =
s) 5 ต่อd
t
ตั้งแต่ 5 (ระยะทาง) หารด้วย 5 ( จำกัด ความเร็ว) คือ 1, ที่เร็วที่สุดที่ฉันจะได้ไปอยู่บนท้องถนนที่เป็น t
1
บนถนนสายถัดไปขีด จำกัด ความเร็วคือ 10 และระยะทางเป็น 5 ด้วยความเร็วที่ฉันสามารถข้ามได้นั่นคือ 0.5 (5/10) การรวมจำนวนครั้งต่ำสุดส่งผลให้เป็น 1.5 หมายความว่าฉันไปถึงขีด จำกัด ความเร็วอย่างแน่นอน
หมายเหตุ: ฉันรู้ว่าฉันอาจไปเร็วมากบนถนนเส้นหนึ่งและวิ่งช้าอีกเส้นทางหนึ่งและข้ามไปใน 1.5 แต่ถือว่าดีที่สุดที่นี่
ตัวอย่างสุดท้าย:
Input 1: 3.2
Input 2: 3.0==========20===
ถนนเส้นแรกยาว 10 และ จำกัด ความเร็วไว้ที่ 3 ดังนั้นเวลาต่ำสุดคือ 3.33333 ... (10/3)
ถนนสายที่สองยาว 3 และ จำกัด ความเร็วที่ 20 ดังนั้นเวลาต่ำสุดคือ 0.15 (3/20)
ผลรวมของเวลาเป็น 3.483333333 ... ฉันข้ามไปใน 3.2 ดังนั้นฉันต้องเร่งความเร็วที่ไหนสักแห่ง
หมายเหตุ:
- คุณต้องแสดงค่าที่แตกต่างกันหนึ่งอย่างถ้าฉันเร่งความเร็วอย่างไม่ต้องสงสัยและอีกค่าที่ต่างกันถ้าฉันไม่ได้เป็น
- โปรแกรมหรือฟังก์ชั่นของคุณอาจต้องการอินพุตหรือเอาต์พุตเพื่อให้มีบรรทัดใหม่ต่อท้าย แต่โปรดระบุในการส่งของคุณ
- อินพุตแรกของคุณจะเป็นความเร็วของฉัน มันจะเป็นจำนวนเต็มบวกหรือจำนวนเต็มหรือสตริง
- ข้อมูลที่สองของคุณจะเป็นถนน มันก็จะตรงกับ
^(([1-9]+[0-9]*|[0-9]+\.[0-9]+)=+)+\n?$
regex คุณอาจทดสอบอินพุตที่อาจเป็นไปได้ที่นี่หากคุณสนใจ - คุณอาจรับพารามิเตอร์ 2 อย่างของฟังก์ชันหรือโปรแกรมใน 2 ไฟล์แยกจาก STDIN สองครั้งหรือจากสตริงที่คั่นด้วยช่องว่างที่ส่งผ่านไปยัง STDIN, ฟังก์ชั่น, ไฟล์หรือพารามิเตอร์บรรทัดคำสั่ง
- หากคุณต้องการคุณสามารถเปลี่ยนลำดับของอินพุต
- มีคำถามอะไรไหม? ถามด้านล่างในความคิดเห็นและความสุขรหัสกอล์ฟ !
^(([1-9]+[0-9]*|(?!0\.0+\b)[0-9]+\.[0-9]+)=+)+\n?$
นี้แทน (มันน่าจะสะอาดกว่าเดิมด้วยการมอง แต่หลังจากนั้นมันต้องใช้. net engine)