สมมติว่าเรามีตัวเลขสี่ตัว d, L, v1 และ v2 การกดสองครั้งเริ่มต้นที่ตำแหน่ง 0 และ L โดยจะเคลื่อนที่เข้าหากันด้วยความเร็ว v1 และ v2 แต่ละรายการ ความกว้างของบุคคลคือ d เขาจะตายหากช่องว่างระหว่างการกดสองครั้งน้อยกว่า d เราต้องหาว่าคนนั้นจะมีชีวิตอยู่ได้นานแค่ไหน
ดังนั้นหากอินพุตเป็นเหมือน d =1; L =9; v1 =1; v2 =2; จากนั้นผลลัพธ์จะเป็น 2.6667
ขั้นตอน
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
e := (L - d)/(v1 + v2) return e
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include <bits/stdc++.h> using namespace std; float solve(int d, int L, int v1, int v2){ float e = (L - d) / (float)(v1 + v2); return e; } int main(){ int d = 1; int L = 9; int v1 = 1; int v2 = 2; cout << solve(d, L, v1, v2) << endl; }
อินพุต
1, 9, 1, 2
ผลลัพธ์
2.66667