采购特价商品

题目背景

《爱与愁的故事第三弹·shopping》第一章。

题目描述

中山路店山店海,成了购物狂爱与愁大神的“不归之路”。中山路上有n(n<=100)家店,每家店的坐标均在-10000~10000之间。其中的m家店之间有通路。若有通路,则表示可以从一家店走到另一家店,通路的距离为两点间的直线距离。现在爱与愁大神要找出从一家店到另一家店之间的最短距离。你能帮爱与愁大神算出吗?

输入输出格式

输入格式:

共n+m+3行:

第1行:整数n

第2行~第n+1行:每行两个整数x和y,描述了一家店的坐标

第n+2行:整数m

第n+3行~第n+m+2行:每行描述一条通路,由两个整数i和j组成,表示第i家店和第j家店之间有通路。

第n+m+3行:两个整数s和t,分别表示原点和目标店

输出格式:

仅一行:一个实数(保留两位小数),表示从s到t的最短路径长度。

输入输出样例

输入样例#1:

5
0 0
2 0
2 2
0 2
3 1
5
1 2
1 3
1 4
2 5
3 5
1 5

输出样例#1:

3.41

说明

100%数据:n<=100,m<=1000

分析:

点开这题一看。。。这不是我写过的题目吗(除了输出精度不同)。。。然后还换了个题面。。。

详细分析见:最短路径问题

代码(事实上代码除了输出都一样):

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#include<cmath>
using namespace std;
const int M=500005*2;
const int oo=1<<30;
queue<int> q;
int n,m,s,t;
int tot;
int next[M],head[M],to[M];
double adj[M];
bool f[M];
double d[M];
inline int get(){
    int f=1;
    char c=getchar();
    int res=0;
    while (c<‘0‘||c>‘9‘) {
        if (c==‘-‘) f=-1;
        c=getchar();
    }
    while (c>=‘0‘&&c<=‘9‘){
        res=(res<<3)+(res<<1)+c-‘0‘;
        c=getchar();
    }
    return res*f;
}
void add(int u,int v,double w){
    next[++tot]=head[u];
    head[u]=tot;
    adj[tot]=w;
    to[tot]=v;
    return ;
}
void spfa(){
    q.push(s);
    d[s]=0;
    f[s]=true;
    int u;
    while (!q.empty()){
        u=q.front();
        q.pop();
        f[u]=false;
        for (int j=head[u];j;j=next[j]){
            if (d[to[j]]>d[u]+adj[j]){
                d[to[j]]=d[u]+adj[j];
                if (!f[to[j]]){
                q.push(to[j]);
                f[to[j]]=true;
                }
            }
        }
    }
    return ;
}
double x[M],y[M];
int main(){
    n=get();
    for (int i=1;i<=n;i++) d[i]=oo;
    for (int i=1;i<=n;i++) x[i]=get(),y[i]=get();
    m=get();
    for (int i=1;i<=m;i++){
        int u,v;
        u=get(),v=get();
        double w=sqrt((x[u]-x[v])*(x[u]-x[v])+(y[u]-y[v])*(y[u]-y[v]));
        add(u,v,w);
        add(v,u,w);
    }
    memset(f,false,sizeof(f));
    s=get(),t=get();
    spfa();
    printf ("%.2f\n",d[t]);
    //while (1);
    return 0;
}

原文地址:https://www.cnblogs.com/kanchuang/p/11150497.html

时间: 2024-10-31 09:26:07

采购特价商品的相关文章

洛谷——P1744 采购特价商品

P1744 采购特价商品 题目背景 <爱与愁的故事第三弹·shopping>第一章. 题目描述 中山路店山店海,成了购物狂爱与愁大神的“不归之路”.中山路上有n(n<=100)家店,每家店的坐标均在-10000~10000之间.其中的m家店之间有通路.若有通路,则表示可以从一家店走到另一家店,通路的距离为两点间的直线距离.现在爱与愁大神要找出从一家店到另一家店之间的最短距离.你能帮爱与愁大神算出吗? 输入输出格式 输入格式: 共n+m+3行: 第1行:整数n 第2行~第n+1行:每行两个

洛谷 P1744 采购特价商品

题目背景 <爱与愁的故事第三弹·shopping>第一章. 题目描述 中山路店山店海,成了购物狂爱与愁大神的“不归之路”.中山路上有n(n<=100)家店,每家店的坐标均在-10000~10000之间.其中的m家店之间有通路.若有通路,则表示可以从一家店走到另一家店,通路的距离为两点间的直线距离.现在爱与愁大神要找出从一家店到另一家店之间的最短距离.你能帮爱与愁大神算出吗? 输入输出格式 输入格式: 共n+m+3行: 第1行:整数n 第2行~第n+1行:每行两个整数x和y,描述了一家店的

商品订购及货物采购信息系统(需求分析)

这个系统是之前有人提过的一个小的管理信息系统,后来自己用Java+mysql实现了所有功能,现在整理一下,望各位能够批评指正,谢谢.  系统整体需求说明 订单采购管理:某公司为企业客户提供食品.蔬菜.肉制品等商品采购配送服务.为此公司需要保存企业客户的基本信息,其基本信息包括企业名称.客户简称.企业法人.企业地址.邮政编码.开户银行.账号以及企业客户的联系人,联系人信息包括联系人姓名.联系人电话.手机.电子信箱.一个企业客户可以有多个联系人. 公司为企业客户提供的商品信息描述包括商品名称.包装方

在ECSHOP首页今日特价(促销商品)增加倒计时效果

看到不少朋友在找首页特价商品倒计时的修改方法,写了这篇文章希望能帮到有此需要的朋友们 1.首先修改程序部分 打开includes/lib_goods.php 找到get_promote_goods()函数部分 在 $goods[$idx]['url'] = build_uri('goods', array('gid' => $row['goods_id']), $row['goods_name']); (注:这里一定要谨慎,一定要找准位置,很多同志都是绊倒在这里的,如果你没修改过这个文件的话,大

WMS仓库管理系统---(7)采购管理模块--采购单创建

采购模块是任何ERP系统,进销存系统必不可少的模块,所有的商品都必须先进货,然后才能销售.所以采购是销售的源头,采购模块包括采购单的创建,采购单的审核 采购商品的入库,上架等操作.我们这一节来看下采购单怎么创建. 采购单顾名思义就是采购商品,这肯定要和供应商挂钩,采购的商品还要入库,所以采购单创建的时候要选择采购商品进入哪个仓库. 1.创建采购单 创建采购单的时候,我们要选择供应商,选择采购单入库仓库. 2.添加采购商品 选择完供应商后,根据供应商查询出该供应商下的所有商品,选择要采购的商品 3

Java生鲜电商平台-生鲜供应链(采购管理)

Java生鲜电商平台-生鲜供应链(采购管理) 在生鲜供应链系统中采购中心这一模块,它是电商公司管理采购的模块,包含供应商管理,采购订单管理,采购商品管理,在该模块中采购订单是采购中心的核心模块.在其他的比如供应商的管理,采购商品的管理,都始终围绕着订单管理为中心进行.本文将围绕电商后台中采购中心的供应商管理,采购订单管理,采购商品管理三个模块进行讲解. 在设计电商后台尤其需考虑公司的组织架构,考虑公司的个部门之间的业务流转,在设计后台尤其需要结合公司自身的组织架构和自身的业务需求,尽量精简业务流

SEO基础知识_绝密教程

<p align="center"> </p> <p>   </p> <p align="center"> 第一次接触SEO,请阅读本基础指南入门,也可以注册论坛:<a  1-1.html" target="_blank"><span style="color:black;">从一句话入门</span><span s

msmms (二) sms与mms 简述!

mms 锁定 本词条由“科普中国”百科科学词条编写与应用工作项目 审核 . MMS是英文缩写,它可以是Membership Management System的缩写,中文译名为会员管理系统.也可以是Multimedia Messaging Service的缩写,中文译为彩信. 中文名 会员管理系统 外文名 Membership Management System 英文简称 MMS 释    义 一种串流媒体传送协议 常见系统 3种 系统功能 10大功能 目录 1 简介 ? 常见系统 ? 系统构成

32、生鲜电商平台-商品价格的设计与架构

说明:Java开源生鲜电商平台-商品价格的设计与架构,主要是对商品的价格进行研究与系统架构. 一.常见的电商价格 市场价(List Price):这个价格仅是用于显示,用于衬托网站销售价格的优惠程度: 销售价(Sales Price):亦称我们的价格.零售价等,如果没有任何优惠的(包括促销优惠.会员等级优惠等), 就按这个价格进行销售.所有的优惠规则均是基于这个价格进行计算. 特价(Special Price):优先级最高的定价,忽略所有的价格规则. SKU价格(SKU Price):同一个产品