HihoCoder 1270 建造基地(完全背包)

本文介绍了一个使用完全背包算法解决的问题,特别关注了金属材料的重复使用情况,并通过代码实现了解决方案,包括处理可能的溢出情况。

题意:

分析:

,
,,

代码:

//
//  Created by TaoSama on 2016-03-06
//  Copyright (c) 2016 TaoSama. All rights reserved.
//
#pragma comment(linker, "/STACK:1024000000,1024000000")
#include <algorithm>
#include <cctype>
#include <cmath>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <iomanip>
#include <iostream>
#include <map>
#include <queue>
#include <string>
#include <set>
#include <vector>

using namespace std;
#define pr(x) cout << #x << " = " << x << "  "
#define prln(x) cout << #x << " = " << x << endl
const int N = 1e5 + 10, INF = 0x3f3f3f3f, MOD = 1e9 + 7;

int n, m, k, t, q;
int a[105], b[105];
typedef long long LL;

LL f[10005];
const LL INFLL = 0x3f3f3f3f3f3f3f3fLL;

int main() {
#ifdef LOCAL
    freopen("C:\\Users\\TaoSama\\Desktop\\in.txt", "r", stdin);
//  freopen("C:\\Users\\TaoSama\\Desktop\\out.txt","w",stdout);
#endif
    ios_base::sync_with_stdio(0);

    scanf("%d", &q);
    while(q--) {
        scanf("%d%d%d%d", &n, &m, &k, &t);
        for(int i = 1; i <= m; ++i) scanf("%d", a + i);
        for(int i = 1; i <= m; ++i) scanf("%d", b + i);
        LL ans = 0;
        bool can = true;
        while(n--) {
            memset(f, 0x3f, sizeof f);
            f[0] = 0;
            LL cur = INFLL;
            for(int i = 1; i <= m; ++i)
                for(int j = 0; j <= k; ++j)
                    if(j + b[i] > k) cur = min(cur, f[j] + a[i]);
                    else f[j + b[i]] = min(f[j + b[i]], f[j] + a[i]);
            cur = min(cur, f[k]);
            if(cur == INFLL) {can = false; break;}
            ans += cur;
            for(int i = 1; i <= m; ++i) b[i] /= t;
        }
        if(can) printf("%lld\n", ans);
        else puts("No Answer");
    }
    return 0;
}
内容概要:本文提出了一种基于瞬态三角哈里斯鹰算法(TTHHO)的多无人机协同集群在三维空间中的避障路径规划方法,旨在通过优化路径长度、飞行高度、威胁规避和转弯角度等关键因素,实现以最低综合成本为目标的全局路径规划。该方法结合智能优化算法与多智能体协同机制,在复杂三维环境中有效解决动态障碍物规避与飞行安全性问题,并通过Matlab平台进行算法编码实现与仿真实验,验证了其在路径最优性、收敛速度和避障能力方面的优越性能。研究涵盖了三维空间建模、目标函数构建、约束条件处理及多无人机协同策略设计,提升了无人机系统在实际应用场景中的自主导航与智能化决策水平。; 适合人群:具备一定编程基础,熟练掌握Matlab仿真环境,从事无人机路径规划、智能优化算法、多智能体协同控制等相关方向研究的科研人员、工程技术人员及研究生。; 使用场景及目标:① 实现多无人机在复杂三维环境下的协同避障路径规划,确保飞行安全与任务效率;② 研究基于哈里斯鹰算法及其改进版本(如TTHHO)的智能优化机制在路径规划中的应用;③ 推动多目标优化(路径最短、能耗最低、威胁最小、飞行平稳)下无人机自主导航系统的开发与落地; 阅读建议:此资源以Matlab代码实现为核心支撑,建议读者深入理解TTHHO算法原理的基础上,结合文中提供的仿真模型进行代码调试与参数调优,进一步探索不同环境设置和约束条件下算法的适应性与鲁棒性,鼓励通过扩展威胁模型或引入通信延迟等现实因素开展深化研究。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值