7-3 打怪升级

news2024/11/20 15:21:18

在这里插入图片描述

B0->途经堡垒1->...->B
总耗费能量 武器总价值

输入样例:

6 12
1 2 10 5
2 3 16 20
3 1 4 2
2 4 20 22
4 5 2 2
5 3 12 6
4 6 8 5
6 5 10 5
6 1 20 25
1 5 8 5
2 5 2 1
2 6 8 5
4
2 3 6 5

输出样例:

5
5->2
2 1
5->1->3
12 7
5->4->6
10 7
5
0 0
#include <bits/stdc++.h>
using namespace std;
#define int long long int
#define pii pair<int,int>
const int N=55;
int a[N];
int n,k,m;
//map<int,int> mp;
int mp[255*4+5];
signed main(){//用数组模拟哈希表可以节省一半的时间
	cin>>n>>k;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	for(int i=0;i<n;i++){
		for(int j=i+1;j<n;j++){
			for(int k=j+1;k<n;k++){
				for(int l=k+1;l<n;l++){
					mp[a[i]+a[j]+a[k]+a[l]]=1;
				}
			}
		}
	}
	int x;
//	cout<<mp[44]<<endl;
	while(k--){
		cin>>m;
		int fg=1;
		for(int i=0;i<m;i++){
			cin>>x;
//			if(!mp.count(x*4)){
			if(!mp[x*4]){
				fg=0;
//				cout<<"No";
				break;
			}
		}
		if(!fg)cout<<"NO";
		else cout<<"YES";
//		if(fg)cout<<"Yes";
		cout<<endl;
	}
	
    return 0;
}
//Yes or YES
//break跳出本层循环没错,别阻挡了输入



#include<bits/stdc++.h>
using namespace std;
// #define int long long
const int inf=0x3f3f3f3f;
const int N=1005;
int e[N][N];
struct edge{
	int to,w,w2;
};
vector<edge> G[N];
int n,m,u,v,w,w2;
struct node{
    int to,w,w2;
    bool operator<(const node & p)const{
        if(w==p.w)return w2<p.w2;
            else return w>p.w;
    }
};
int dist[N],dist1[N];
bool vis[N];
int path[N];
void print(int x){
	if(path[x]==-1)return ;
	print(path[x]);
	cout<<"->"<<x;
}
signed main(){
    memset(e,0x3f,sizeof(e));
    cin>>n>>m;
    for(int i=0;i<m;i++){
        cin>>u>>v>>w>>w2;
//        e[u][v]=min(e[u][v],w);
//        e[v][u]=min(e[v][u],w);
        e[u][v]=e[v][u]=w;
        G[u].push_back({v,w,w2});
        G[v].push_back({u,w,w2});
    }
    for(int k=1;k<=n;k++){
        for(int i=1;i<=n;i++){
            for(int j=1;j<=n;j++){
                if(e[i][j]>e[i][k]+e[k][j])e[i][j]=e[i][k]+e[k][j];
            }
        }
    }
    int rt=-1;
    int mx=inf;
    for(int i=1;i<=n;i++){
        int tmp=-1;
        for(int j=1;j<=n;j++){
            tmp=max(tmp,e[i][j]);
        }
        if(tmp<mx){
            rt=i;
            mx=tmp;
        }
    }
    priority_queue<node> Q;
    Q.push({rt,0,0});
    for(int i=1;i<=n;i++){
        dist[i]=inf;
        path[i]=-1;
    }
    dist[rt]=0;
    for(int t=1;t<=n;t++){
        if(Q.empty())break;
        node p=Q.top();Q.pop();
        int u=p.to;
        if(vis[u]){
            t--;
            continue;
        }
        vis[u]=true;
        for(int i=0;i<G[u].size();i++){
        	int to=G[u][i].to;
        	int w=G[u][i].w;
        	int w2=G[u][i].w2;
        	if(dist[to]>dist[u]+w){
        		dist[to]=dist[u]+w;
        		dist1[to]=dist1[u]+w2;
        		path[to]=u;
        		Q.push({to,dist[to],dist1[to]});
			}
			else if(dist[to]==dist[u]+w&&dist1[to]<dist1[u]+w2){
//					dist[to]=dist[u]+w;
        			dist1[to]=dist1[u]+w2;
        			path[to]=u;
        			Q.push({to,dist[to],dist1[to]});
			}
		}
    }
//    cout<<rt<<"hhhhhhh"<<endl;
    cout<<rt<<endl;
    int T,x;
    cin>>T;
    while(T--){
    	cin>>x;
    	cout<<rt;
    	print(x);
    	cout<<endl;
    	cout<<dist[x]<<" "<<dist1[x]<<endl;
	}
    return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/755655.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

目标检测——R-CNN网络基础

目录 Overfeat模型RCNN模型算法流程候选区域生成CNN网络提取特征目标分类&#xff08;SVM&#xff09;目标定位预测过程 算法总结 Fast RCNN模型算法流程ROI Pooling目标分类和回归 模型训练模型总结 Overfeat模型 RCNN模型 算法流程 候选区域生成 CNN网络提取特征 目标分类&am…

osg osgText::Text 中文乱码问题修复 解决中

osg osgText::Text 中文乱码问题修复 解决中 #include <osgDB/ConvertUTF>osg::Camera* osgWidget::createTextHUD() { osgText::Font* fontHei osgText::readFontFile("Fonts/simkai.ttf");text->setFont(fontHei);// 步骤二&#xff1a;设置 文字颜…

浅谈分布式系统 - 架构演进

目录 1. 架构演进 1.1 单机架构 1.2 什么是分布式架构 1.3 数据库和应用分离 1.4 引入负载均衡 1.5 引入数据库读写分离 1.6 引入缓存 1.7 数据库分库分表 1.8 微服务架构 2. 分布式系统下的常见概念 1. 架构演进 1.1 单机架构 单机架构只有一台服务器, 这个服务器…

HTML+CSS+JavaScript:渲染柱形统计图

一、需求 用户输入四个季度的数据&#xff0c;根据数据生成柱形统计图&#xff0c;浏览器预览效果如下 二、完整代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content&q…

Java利用POI导入Excel数据(多个sheet、模板)

需求&#xff1a;根据excel模板导入数据 sheet1&#xff1a;1-6行为固定格式&#xff0c;且需要取值({xxx});7行开始为数据集合(list) sheet2&#xff1a;都为固定格式&#xff0c;取值地方&#xff1a;{xxx} 1、数据格式&#xff08;两个Sheet&…

从零开始理解Linux中断架构(19)--中断线程化irq_thread

前面一节讲到的中断流处理流程是在hard_irq 流程上&#xff0c;工作在中断堆栈上。还有一种情况是使用中断线程的情形。request_threaded_irq参数中有两个处理函数handler,thread_fn是有区别的。handler主中断处理例程&#xff0c;运行hard_irq 流程上。而如果驱动程序填写thre…

利用R分别绘制配对连线散点图、云雨图、山脊图

大家好&#xff0c;我是带我去滑雪&#xff01; 精美的科研绘图总会给人眼前一亮&#xff0c;今天学习利用R绘制多组配对连线散点图、云雨图、山脊图&#xff0c;这三幅图最近都曾出现在Nature Communications (IF 16.6)中&#xff0c;比如配对连线散点图&#xff0c;如下所示&…

AI智能助手的未来:与人类互动的下一代人工智能技术

自我介绍⛵ &#x1f4e3;我是秋说&#xff0c;研究人工智能、大数据等前沿技术&#xff0c;传递Java、Python等语言知识。 &#x1f649;主页链接&#xff1a;秋说的博客 &#x1f4c6; 学习专栏推荐&#xff1a;人工智能&#xff1a;创新无限、MySQL进阶之路、C刷题集、网络安…

AIGC文生图:使用ControlNet 控制 Stable Diffusion

1 ControlNet介绍 1.1 ControlNet是什么&#xff1f; ControlNet是斯坦福大学研究人员开发的Stable Diffusion的扩展&#xff0c;使创作者能够轻松地控制AI图像和视频中的对象。它将根据边缘检测、草图处理或人体姿势等各种条件来控制图像生成。 论坛地址&#xff1a;Adding…

操作系统进行设备控制的方式

一.I/O控制方式 上一篇的博客介绍了设备管理的一些概念基础知识点&#xff0c;其中I/O控制方式这一块没有详细说明。设备管理的主要任务之一是控制设备和内存或CPU之间的数据传送。外围设备和内存之间的输入/输出控制方式有4种&#xff0c;下面分别加以介绍。 二.程序直接控制…

ITIL 4—事件管理实践

1 关于本文 本文档提供事件管理实践实用指南。分为五个主要部分&#xff0c;内容包括&#xff1a; 本实践的一般信息实践的流程和活动及其在服务价值链中的作用参与实践的组织和人员支持实践的信息和技术对实践的合作伙伴和供应商的考虑。 1.1 ITIL4 认证方案 本文档的部分…

Ubuntu 安装 Docker

本文目录 1. 卸载旧版本 Docker2. 更新及安装工具软件2.1 更新软件包列表2.2 安装几个工具软件2.3 增加一个 docker 的官方 GPG key2.4 下载仓库文件 3. 安装 Docker3.1 再次更新系统3.2 安装 docker-ce 软件 4. 查看是否启动 Docker5. 验证是否安装成功 1. 卸载旧版本 Docker …

图片文字对齐 图片文字居中对齐

方法一: 用 vertical-align: middle; <view class="container"><view class="search"><image src="../../images/icon/search.png" alt="" /><text class="tex">搜索</text></view>&…

手写对象浅比较(React中pureComponent和Component区别)

PureComponent和Component的区别 PureComponent会给类组件默认加一个shouldComponentUpdate这样的周期函数 //PureComponent类似自动加了这段shouldComponentUpdate(nextProps,nextState){let { props, state } this;// props/state:修改之前的属性状态// nextProps/nextState…

layui入门增删改查

layui入门增删改查 创建Lauiyi对象1.后台准备1.dao方法2.子实现类 2.R工具类的使用3.查询前端代码实现前端页面 4.增删改实现2.浮层3分离的js代码1.userManage.js2.userEdit.js3.index.js 5.运行效果 作为一名开发人员&#xff0c;我们经常需要对数据库中的数据进行增删改查&am…

120、仿真-51单片机温湿度光照强度C02 LCD1602 报警设计(Proteus仿真+程序+元器件清单等)

方案选择 单片机的选择 方案一&#xff1a;STM32系列单片机控制&#xff0c;该型号单片机为LQFP44封装&#xff0c;内部资源足够用于本次设计。STM32F103系列芯片最高工作频率可达72MHZ&#xff0c;在存储器的01等等待周期仿真时可达到1.25Mip/MHZ(Dhrystone2.1)。内部128k字节…

刷题 DAY4

题目1 给定一个有序数组arr&#xff0c;给定一个正数aim (1)返回累加和为aim的&#xff0c;所有不同二元组 (2)返回累加和为aim的&#xff0c;所有不同三元组 问题一 暴力的解法就是 遍历每一个二元组 找和为aim的 当然 只用暴力解很难ac 想一想有序 那肯定就是能加速 我们…

RocketMQ下载安装、集群搭建保姆级教程

目录 1.下载安装 2.配置 3.测试 4.集群配置 4.1.规划 4.2.环境准备 4.3.节点配置 4.3.1.master1 4.3.2.slave2 4.3.3.master2 4.3.4.slave1 4.4.启动 4.5.测试 1.下载安装 前置条件&#xff1a; JDK环境 下载地址&#xff1a; 下载 | RocketMQ 博主下载的是4.…

排序算法笔记--摩尔投票算法

摩尔投票算法 摩尔投票算法是一种用于在数组中查找出现次数超过一半的元素的有效算法。算法的核心思想是利用候选元素和计数器进行投票&#xff0c;通过消除不同元素之间的抵消来找到出现次数超过一半的元素。 算法原理 如果数组中存在一个出现次数超过一半的元素&#xff0…

【从零开始学习CSS | 第三篇】选择器优先级

目录 前言&#xff1a; 常见选择器的优先级&#xff08;从高到低&#xff09; 选择器的权重&#xff1a; 总结&#xff1a; 前言&#xff1a; 在前几篇文章中我们介绍了大量的选择器&#xff0c;那么大量的选择器在使用的时候&#xff0c;一定是有一个优先级顺序的&#xff…