Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C ++ để tìm người chiến thắng trong trò chơi loại bỏ bóng

Giả sử chúng ta có bốn số n1, n2, k1 và k2. Xét có 2 hộp, hộp thứ nhất có n1 quả bóng và hộp thứ hai có n2 quả bóng. Amal và Bimal đang chơi trò chơi. Trong một lần di chuyển, họ có thể lấy từ 1 đến k1 quả bóng và ném chúng ra ngoài, tương tự người thứ hai sẽ lấy từ 1 đến k2 quả bóng trong nước đi của mình. Amal bắt đầu trò chơi và họ chơi xen kẽ. Người không thể chơi nước đi của mình sẽ thua trò chơi. Chúng tôi phải tìm ra ai sẽ là người chiến thắng.

Vì vậy, nếu đầu vào giống như n1 =2; n2 =2; k1 =1; k2 =2, thì đầu ra sẽ là Bimal, vì mỗi hộp có 2 quả bóng. Amal lấy một quả bóng từ hộp đầu tiên và sau đó Bimal có thể lấy 1 hoặc 2 quả bóng từ hộp thứ hai. Bất kể Amal hành động như thế nào, Bimal luôn có thể thắng nếu anh ấy chơi một cách tối ưu.

Các bước

Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -

if n1 > n2, then:
   return "Amal"
Otherwise
   return "Biaml"

Ví dụ

Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -

#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;
}

Đầu vào

2, 2, 1, 2

Đầu ra

Bimal