poj1017

一、题意:有底面积为1*1,2*2,...,6*6高为h的物品若干,求用最少的包装盒包装好这些物品,其中包装盒的大小固定为底面积6*6,高为h

二、思路:贪心。先放大的,然后用小的尽量去凑满这个包装盒,从6到1类推。我用的是比较暴力的方法,每一种情况都考虑出来,然后模拟。

三、代码:

#include"iostream"
#include"stdio.h"
#include"math.h"
using namespace std;

int num[7];

int Solve()
{
    int res=num[5];
    res+=num[4];
    num[0]-=num[4]*11;
    res+=num[3];
    if(num[1]<num[3]*5)
    {
        num[0]-=(20*num[3]-4*num[1]);
    }
    num[1]-=num[3]*5;
    res+=num[2]/4;
    int numLeave=num[2]%4;
    if(numLeave>0) res++;
    switch(numLeave)
    {
    case 1:
        if(num[1]<5)
        {
            if(num[1]>0)
            {
                num[0]-=(27-num[1]*4);
                num[1]=0;
            }
            else
                num[0]-=27;

        }
        else
        {
            num[1]-=5;
            num[0]-=7;
        }
        break;
    case 2:
        if(num[1]<3)
        {
            if(num[1]>0)
            {
                num[1]=0;
                num[0]-=(18-num[1]*4);
            }
            else
                num[0]-=18;
        }
        else
        {
            num[1]-=3;
            num[0]-=6;
        }
        break;
    case 3:
        if(num[1]<1)
        {
            num[0]-=9;
        }
        else
        {
            num[1]-=1;
            num[0]-=5;
        }
        break;
    default:
        break;
    }
    if(num[1]>0)
    {
        res+=num[1]/9;
        if(num[1]%9>0)
        {
            res++;
            num[0]-=(36-4*(num[1]%9));
        }
    }
    if(num[0]>0)
    {
        res+=ceil(num[0]/36.0);
    }
    return res;
}

int main()
{
    while(true)
    {
        int sum=0;
        for(int i=0;i<6;i++)
        {
            cin>>num[i];
            sum+=num[i];
        }
        if(!sum) break;
        cout<<Solve()<<endl;
    }
    return 0;
}

  

转载于:https://www.cnblogs.com/acm-jing/p/9833172.html

Windows 系统修复工具主要用于解决 Windows 11/10 系统中的各种常见问题,具有操作简单、功能全面等特点: 文件资源管理器修复:可解决文件资源管理器卡死、崩溃、无响应等问题,能终止崩溃循环。还可修复右键菜单无响应或选项缺失问题,以及重建缩略图缓存,让图片、视频等文件的缩略图正常显示,此外,还能处理桌面缺少回收站图标、回收站损坏等问题。 互联网连接修复:能够刷新 DNS 缓存,加速网页加载速度,减少访问延迟。可重置 TCP/IP 协议栈,增强网络连接稳定性,减少网络掉线情况,还能还原 Hosts 文件,清除恶意程序对网络设置的篡改,保障网络安全,解决电脑重装系统后网络无法连接、浏览器主页被篡改等问题。 系统修复:集成系统文件检查器(SFC),可自动扫描并修复受损的系统文件。能解决 Windows 激活状态异常的问题,还可重建 DLL 注册库,恢复应用程序兼容性,解决部分软件无法正常运行的问题,同时也能处理如 Windows 沙箱无法启动、Windows 将 JPG 或 JPEG 保存为 JFIF 等系统问题。 系统工具维护:提供启动管理器、服务管理器进程管理器等工具,用户可控制管理启动程序、系统服务当前运行的进程,提高系统的启动运行速度,防止不必要的程序服务占用系统资源。还能查看系统规格,如处理器线程数、最大显示分辨率等。 故障排除:集成超过 20 个微软官方诊断工具,可对系统问题进行专业排查,还能生成硬件健康状态报告。能解决搜索索引故障、邮件日历应用程序崩溃、设置应用程序无法启动等问题,也可处理打印机、网络适配器、Windows 更新等相关故障。 其他修复功能:可以重置组策略设置、catroot2 文件夹、记事本等多种系统设置组件,如重置 Windows 应用商店缓存、Windows 防火墙设置等。还能添加重建图标缓存支持,恢复粘滞便笺删除
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值