สมมติว่าเรามีจำนวน x เรามีลูกเต๋าหกหน้าและหน้าของมันมีเลขตั้งแต่ 2 ถึง 7 เราต้องการแต้ม x จากลูกเต๋า เมื่อเราโยนลูกเต๋า ตัวเลขหน้าจะถูกเพิ่มเพื่อให้บรรลุเป้าหมายของเรา เราไม่สนใจเกี่ยวกับจำนวนการทอยลูกเต๋า ดังนั้นเราจึงต้องการทราบจำนวนการทอยที่เราสามารถทำได้เพื่อให้ได้คะแนน x ที่แน่นอนสำหรับพวกเขา เราโชคดีมาก ดังนั้นหากความน่าจะเป็นที่จะได้รับ x แต้มด้วยจำนวนการทอยที่เลือกไม่เป็นศูนย์ เราก็จะสามารถทอยลูกเต๋าในลักษณะดังกล่าวได้ เราต้องหาเลขให้เจอ
ดังนั้น ถ้าอินพุตเป็นเหมือน x =100 ผลลัพธ์จะเป็น 27 เพราะเราได้ 2, 11 ครั้ง, 3, หกครั้ง และ 6, 10 ครั้ง (คำตอบอื่นๆ ก็ได้)
ขั้นตอน
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
return floor of (x / 2)
ตัวอย่าง
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
#include<bits/stdc++.h> using namespace std; int solve(int x){ return x/2; } int main(){ int x = 100; cout << solve(x) << endl; }
อินพุต
100
ผลลัพธ์
50