P2083 找人

题目背景

题目描述

小明要到他的同学家玩,可他只知道他住在某一单元,却不知住在哪个房间。那个单元有N层(1,2……N),每层有M(1,2……M)个房间。

小明会从第一层的某个房间开始找,他找的方式也很特别,每次到了一个房间,如果不是他的同学,他就会询问这人,

然后他就会去那人告诉他的房间号,如果还不是,他就会继续按这个方法找下去,直到找到。当然,他也有可能找不到同学。他的体力也是有限的,他每爬一层楼梯就会消耗V体力值。你的任务就是求找到同学耗费的最少体力值,如果找不到,就输出impossible 。

输入输出格式

输入格式:

共N+1行。

第一行,N,M,V,X,Y(X,Y表示同学只在X层Y房间)

2~N+1行,每行M*2个数字,第i+1行j*2-1个数Ak和j*2个数Ak+1表示住在i层j房间的人提供的信息是Ak层和Ak+1房间。(同学的信息就是自己的房间号)

输出格式:

一个数,即答案。

输入输出样例

输入样例#1: 复制

3 3 2 2 3
1 3 3 3 2 1
2 3 1 1 2 3
1 1 1 2 2 3
输出样例#1: 复制

2

说明

N<=1000,M<=100,V<=50

dfs、、、

zz啊、、由于本题是求最小值,因此在返回的时候不能返回-1!!!(才开始用-1判断出现环的情况,老是挂、、)

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 1010
#define maxn 1000000
using namespace std;
int n,m,v,xx,yy,ans;
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return  x*f;
}
struct Node
{
    int x,y;
}node[N][N];
int dfs(int x,int y,int s,int sum)
{
    if(x==xx&&y==yy) return s;
    if(sum>n*m) return maxn;
    dfs(node[x][y].x,node[x][y].y,s+abs(node[x][y].x-x),sum+);
}
int main()
{
    ans=maxn;
    n=read(),m=read(),v=read(),xx=read(),yy=read();
    ;i<=n;i++)
     ;j<=m;j++)
      node[i][j].x=read(),node[i][j].y=read();
    ;i<=m;i++)
     ans=min(ans,dfs(,i,,));
    if(ans==maxn) printf("impossible");
    else printf("%d",ans*v);
    ;
}

洛谷——P2083 找人的更多相关文章

  1. 洛谷 P2083 找人

    P2083 找人 题目背景 无 题目描述 小明要到他的同学家玩,可他只知道他住在某一单元,却不知住在哪个房间.那个单元有N层(1,2……N),每层有M(1,2……M)个房间. 小明会从第一层的某个房间 ...

  2. 洛谷 P1858 多人背包 DP

    目录 题面 题目链接 题目描述 输入输出格式 输入格式 输出格式 输入输出样例 输入样例 输出样例 说明 思路 AC代码 题面 题目链接 洛谷 P1858 多人背包 题目描述 求01背包前k优解的价值 ...

  3. [洛谷P1858] 多人背包

    洛谷题目链接:多人背包 题目描述 求01背包前k优解的价值和 输入输出格式 输入格式: 第一行三个数K.V.N 接下来每行两个数,表示体积和价值 输出格式: 前k优解的价值和 输入输出样例 输入样例# ...

  4. 洛谷 P1509 找啊找啊找GF

    题目背景 "找啊找啊找GF,找到一个好GF,吃顿饭啊拉拉手,你是我的好GF.再见." "诶,别再见啊..." 七夕...七夕...七夕这个日子,对于sqybi这 ...

  5. 洛谷 P1509 找啊找啊找GF(复习二维费用背包)

    传送门 题目背景 "找啊找啊找GF,找到一个好GF,吃顿饭啊拉拉手,你是我的好GF.再见." "诶,别再见啊..." 七夕...七夕...七夕这个日子,对于sq ...

  6. 洛谷 P1858 多人背包 解题报告

    P1858 多人背包 题目描述 求01背包前k优解的价值和 输入输出格式 输入格式: 第一行三个数\(K\).\(V\).\(N\) 接下来每行两个数,表示体积和价值 输出格式: 前k优解的价值和 说 ...

  7. 洛谷——P1469 找筷子

    P1469 找筷子 题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘 ...

  8. 洛谷P1469找筷子

    题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX ...

  9. 洛谷 P1469 找筷子

    题目描述 经过一段时间的紧张筹备,电脑小组的“RP餐厅”终于开业了,这天,经理LXC接到了一个定餐大单,可把大家乐坏了!员工们齐心协力按要求准备好了套餐正准备派送时,突然碰到一个棘手的问题,筷子!CX ...

随机推荐

  1. @Controller,@Service,@Repository,@Component详解

    @Controller 用来表示一个web控制层bean,如SpringMvc中的控制器. @Service 用来表示一个业务层bean. @Repository 用来表示一个持久层bean,即数据访 ...

  2. sklearn_PCA主成分降维

    # coding:utf-8 import pandas as pd import numpy as np from pandas import Series,DataFramefrom sklear ...

  3. NodeJS让前端与后端更友好的分手

    学问   最近“上层建筑”在兴起国学热,所以公司几个月前决定开发一款名叫“学问”的有关于国学的app.     APP的详情页面还是由web来显现具体内容,有些类似于新闻页,图文混排什么的web是最适 ...

  4. 《区块链100问》第75集:大零币Zcash是什么?

    Zcash,全称Zero Cash,简称ZEC,中文叫大零币,研发者为Zooko Wilcox,诞生于2011年11月9日. 采用零知识证明机制提供完全的支付保密性,是目前匿名性最强的数字资产.零知识 ...

  5. yii验证系统学习记录,基于yiicms(一)写的太长了,再写一篇(二)

    项目地址:https://gitee.com/templi/yiicms 感谢七觞酒大神的付出,和免费分享.当然也感谢yii2的开发团队们. 项目已经安全完毕,不知道后台密码,这种背景下,后台无法进去 ...

  6. 重写Java Object对象的hashCode和equals方法实现集合元素按内容判重

    Java API提供的集合框架中Set接口下的集合对象默认是不能存储重复对象的,这里的重复判定是按照对象实例句柄的地址来判定的,地址相同则判定为重复,地址不同不管内容如何都判定为不重复,这有时与需求不 ...

  7. Linux硬盘镜像获取与还原(dd、AccessData FTK Imager)

    1.硬盘镜像获取工具:dd dd是Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换. 1.1 本地取数据 查看磁盘及分区 # fdisk - ...

  8. 使用 script 命令记录用户操作行为

    Script 命令可以帮助管理员记录用户的操作行为,包括用户查看文件中的哪些具体内容,写入了哪些文件,写了些什么都能看到,比较详细的记录了用户的操作行为. 本文对此进行简要说明. 1.添加日志记录 e ...

  9. ClientDataset 三层 var and out arguments must match parameter

    ​​​将Delphi升级到10.1.2后,从客户端传ClientDataset的Delta数据到服务端程序时,出现var and out arguments must match parameter错 ...

  10. 五、springboot单元测试

    1.为什么要写测试用例 1. 可以避免测试点的遗漏,为了更好的进行测试,可以提高测试效率 2. 可以自动测试,可以在项目打包前进行测试校验 3. 可以及时发现因为修改代码导致新的问题的出现,并及时解决 ...