题解 | #找零# c++,贪心

找零

http://www.nowcoder.com/practice/944e5ca0ea88471fbfa73061ebe95728

一个简单的贪心问题,用c++解决 思路: 需要找零的钱从大面值的开始减,如果不够减就换小面值的钱继续减,知道剩下找零的钱减到零为止。

#include<bits/stdc++.h>
using namespace std;

int main() {
	int n;
	cin >> n;
	int rest = 1024 - n;
	int nums = 0;
	vector<int> money = { 64, 16, 4, 1 };
	for (int i = 0; i < 4;) {
		if (rest - money[i] < 0) {
			i++;
			continue;
		}
		else {
			rest -= money[i];
			nums++;
		}
	}
	cout << nums << endl;
	return 0;
}
全部评论

相关推荐

1 收藏 评论
分享
牛客网
牛客企业服务