สมมติว่าเรามีตัวเลข 4 ตัว n1, n2, k1 และ k2 พิจารณาว่ามีกล่อง 2 กล่อง กล่องแรกมี n1 ลูกบอล กล่องที่สองมี n2 ลูกบอล อมลและบิมลเล่นเกม ในหนึ่งตา พวกเขาสามารถหยิบลูกบอล 1 ถึง k1 ลูกจากกล่องแรกและทิ้งไป กล่องที่สองจะหยิบ 1 ถึง k2 ลูกในตาของเขา อมลเริ่มเกมและพวกเขาเล่นสลับกัน คนที่ไม่สามารถเล่นตาได้จะแพ้ เราต้องหาว่าใครจะชนะ
เช่น ถ้าค่าที่ป้อนเข้าเป็น n1 = 2; n2 = 2; k1 = 1; k2 = 2 ผลลัพธ์จะได้ Bimal เพราะแต่ละกล่องมี 2 ลูก อมลหยิบ 1 ลูกจากกล่องแรก แล้วบิมลหยิบ 1 หรือ 2 ลูกจากกล่องที่สอง ไม่ว่าอมลจะทำอย่างไร บิมลจะชนะได้เสมอหากเล่นอย่างเหมาะสม
ขั้นตอนการแก้ปัญหา
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนดังนี้:
ถ้า n1 > n2 แล้ว: คืนค่า "Amal" มิฉะนั้น คืนค่า "Biaml"
ตัวอย่างโค้ด
ดูการนำไปใช้จริงด้านล่างเพื่อความเข้าใจที่ดียิ่งขึ้น:
#include <bits/stdc++.h> using namespace std; string solve(int n1, int n2, int k1, int k2) { if (n1 > n2) return "Amal"; else return "Biaml"; } int main() { int n1 = 2; int n2 = 2; int k1 = 1; int k2 = 2; cout << solve(n1, n2, k1, k2) << endl; }
ข้อมูลนำเข้า
2, 2, 1, 2
ข้อมูลส่งออก
Bimal