C语言 每日一题 牛客网 11.13 Day17

找零

Z国的货币系统包含面值1元、4元、16元、64元共计4种硬币,以及面值1024元的纸币。

现在小Y使用1024元的纸币购买了一件价值为N(0 < N≤1024)的商品,请问最少他会收到多少硬币?

思路

运用if语句进行判断分类

代码实现

cpp 复制代码
    int main() {
        int n = 0;
        int res = 0;
        scanf("%d", &n);
        int data = 1024 - n;

        char coins[4] = { 64,16,4,1 };
        int cur = 0;
        for (cur = 0; data > 0 && cur < 4; ) {
            if (data >= coins[cur]) {
                data = data - coins[cur];
                res++;
            }
            else {
                cur++;
            }
        }

        printf("%d", res);

        return 0;
    }

运行结果

相关推荐
@小柯555m几秒前
算法(移动零)
数据结构·算法·leetcode
Chase_______几秒前
【Java杂项】为什么 long 可以自动转 float?宽化基本类型转换与精度丢失详解
java·开发语言·python
listhi5202 分钟前
基于QT的串口心电波形实时显示系统
开发语言·qt
之歆2 分钟前
DAY_12JavaScript DOM 完全指南(三):高级工程篇
开发语言·前端·javascript·ecmascript
invicinble2 分钟前
java数组相关的信息量
java·开发语言·python
牧瀬クリスだ7 分钟前
Java线程——从创建第一个线程到休眠线程
java·开发语言
重生之我是Java开发战士12 分钟前
【贪心算法】柠檬水找零,将数组和减半的最少操作次数,最大数,摆动序列, 最长递增子序列,递增的三元子序列
算法·贪心算法
我命由我1234512 分钟前
Android 开发问题:TextView 内容超过宽度时,默认不会换行
android·开发语言·java-ee·android studio·android jetpack·android-studio·android runtime
Godspeed Zhao13 分钟前
从零开始学AI17——SVM的数学支撑知识
算法·机器学习·支持向量机
计算机安禾13 分钟前
【c++面向对象编程】第36篇:析构函数应永远不抛出异常——原因与最佳实践
开发语言·c++