मान लीजिए हमारे पास पाँच संख्याएँ n, k1, k2, w और b हैं। पहली पंक्ति में 2 x n कोशिकाओं और पहली k1 कोशिकाओं के साथ एक बोर्ड है, दूसरी पंक्ति में पहली k2 कोशिकाओं को सफेद रंग में रंगा गया है। अन्य सभी कोशिकाएँ काली हैं। हमारे पास सफेद डोमिनोज़ और बी ब्लैक डोमिनोज़ (2 x 1 आकार) हैं। हम बोर्ड पर एक सफेद डोमिनोज रख सकते हैं यदि दोनों बोर्ड की कोशिकाएं सफेद हैं और किसी अन्य डोमिनोज द्वारा कब्जा नहीं किया गया है। उसी तरह, एक काले डोमिनोज़ को रखा जा सकता है यदि दोनों कोशिकाएँ काली हों और किसी अन्य डोमिनोज़ द्वारा कब्जा न किया जाए। हमें यह जांचना होगा कि क्या हम सभी w + b डोमिनोज़ को बोर्ड पर रख सकते हैं यदि वे दोनों क्षैतिज और लंबवत रूप से रखे गए हैं?
तो, अगर इनपुट n =5 की तरह है; के1 =4; के2 =3; डब्ल्यू =3; b =1, तो आउटपुट ट्रू होगा।
कदम
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
if 2 * w <= (k1 + k2) and 2 * b <= (n - k1 + n - k2), then: return true Otherwise return false
उदाहरण
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
#include <bits/stdc++.h> using namespace std; bool solve(int n, int k1, int k2, int w, int b) { if (2 * w <= (k1 + k2) && 2 * b <= (n - k1 + n - k2)) { return true; } else { return false; } } int main() { int n = 5; int k1 = 4; int k2 = 3; int w = 3; int b = 1; cout << solve(n, k1, k2, w, b) << endl; }
इनपुट
5, 4, 3, 3, 1
आउटपुट
1