C++ 程式,用於檢查我們是否可以使用給定的錢購買產品
假設我們有一個數字 N。一個蛋糕賣家正在以 40 盧比的價格出售蛋糕,以 70 盧比的價格出售甜甜圈。我們需要檢查我們能否用正好 N 盧比購買其中的一些。
因此,如果輸入類似於 N = 110,則輸出將為 True,因為 40 + 70 = 110。
為了解決這個問題,我們將遵循以下步驟 −
o := false Define a function dfs(), this will take i, if i > n, then: return false if i is same as n, then: return true if dfs(i + 40), then: return true return dfs(i + 70) From the main method, do the following n := N o := dfs(0) return o
示例
讓我們看看下面的實現,以獲得更好的理解 −
#include <bits/stdc++.h>
using namespace std;
int n;
bool o = false;
bool dfs(int i) {
if (i > n)
return false;
if (i == n)
return true;
if (dfs(i + 40))
return true;
return dfs(i + 70);
}
bool solve(int N) {
n = N;
o = dfs(0);
return o;
}
int main(){
int N = 110;
cout << solve(N) << endl;
}輸入
110
輸出
1
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP