ccf-CCF 无线网络问题 求代码出现的问题

问题描述

CCF 无线网络问题 求代码出现的问题

 #include<iostream>
#include<cmath>
#include<cstring>
#include<queue>

using namespace std;

int d[100][100];

struct plot
{
    long long x;
    long long y;
    int vis;
    long long dis;
}p[200];

int main()
{
    memset(d,0,sizeof(d));//d[]赋值全0
    int m,n,k,num,t,f,knum,tt;
    long long r;

    //输入数据
    cin>>n>>m>>k>>r;
    queue<int> q;
    for(int i=0;i<n+m;i++)
    {
     cin>>p[i].x>>p[i].y;
     p[i].vis=0;
     p[i].dis=pow(10,8)+1;
     } 

    //建立可达矩阵
    for(int i=0;i<n+m;i++)
       for(int j=i+1;j<n+m;j++)
           {
            if((p[i].x-p[j].x)*(p[i].x-p[j].x)+(p[i].y-p[j].y)*(p[i].y-p[j].y)<=r*r)
            {
                d[i][j]=d[j][i]=1;
            }

           }

    //运用BFS
    knum=0;
    num=0;
    q.push(0);
    p[0].dis=0;
    while(!q.empty())
    {
        t=q.front();
        q.pop();
        p[t].vis=0;
        if(t>n)//如果被访问的结点是需要增设的,则需要的增设的数量+1
        knum++;
        f=0;
        for(int i=1;i<n+m;i++)
           {
            if((d[t][i]==1)&&(p[i].vis==0))//如果该结点有可用邻接点而且该点是已存在的结点或者是需要增设的结点但是目前需要增设的数量小于上限
            {
                if(i<=n||((i>n)&&(knum<k)))
                {

                    if(p[i].dis>p[t].dis+1)//如果原先从原点到该结点的距离大于通过t结点到达该结点的距离+1,则更改该结点的距离变量,并将其入队列
                    {
                      q.push(i);
                       p[i].vis=1;
                      p[i].dis=p[t].dis+1;
                      f=1;

                    }

                }

            }

           }
        if(f==0&&t>n)//如果该结点没有可用的邻接点,而且是需要增设的,那么需要的增设的数量-1
          knum--;

    }

    cout<<p[1].dis-1<<endl;//输出从源结点到目的结点的距离 

}
时间: 2024-09-17 03:51:02

ccf-CCF 无线网络问题 求代码出现的问题的相关文章

网络编码 代码-如何用MATLAB实现基于线性网络编码的广播重传问题(求代码)

问题描述 如何用MATLAB实现基于线性网络编码的广播重传问题(求代码) 设计一种适用于单源多宿无线广播网络的.基于网络编码的重传方案,从而利用网络编码的特性,降低重传次数,提高传输特性.并用MATLAB对所设计方案进行仿真 解决方案 http://www.docin.com/p-453982319.html 解决方案二: 看过这篇论文了,求代码....

万人低头时代,如何保障APP无线网络性能?

在这个移动互联网占据人们生活的大部分休闲时间的今天,对于APP而言,其无线网络性能就决定了用户体验.可以这样说,APP是棵树,其Server端的业务服务是树根,APP的业务功能是树枝,那么这棵树的树干就是无线网络通讯.其重要性不言而喻,本文就为大家分享万人低头时代,支付宝APP无线网络性能该如何保障. 直播视频:点击进入 PDF下载:点击进入 以下为整理内容. --------------------------------------------------------------------

Win XP系统无线网络技术完全详解

802.1x无线网络,咋听起来好像很复杂,要想知道它到底是啥,首先要了解什么是无线网络.无线网络这个名词是近几年才开始流行起来的,它涉足的领域相当的广,譬如移动通信领域,那么到底什么是无线网络呢? 无线网络概述 无线网络技术范围广泛,包括从允许用户建立远距离无线连接的全球语音和数据网络,到优化为近距离无线连接的红外线和无线电频率技术.通常用于无线网络的设备包括便携式计算机.台式计算机.手持计算机.个人数字设备 (PDAs).移动电话.笔式计算机和寻呼机.无线技术用于多种实际用途.例如,手机用户可

GSM与CDMA无线网络评估标准探讨

无线网络评估的目的在于通过对网络运行数据进行分析并给出合理的评估,包括网络规划质量.网络运行状况.网络运行存在的问题.隐患.网络投资利用率等项目,进而充分掌握网络的整体运行状况,为网络的进一步优化和建设提供直接参考. 具体就GSM.CDMA网络而言,两者各自有相应的评估准则和方法.对于两种体系评估标准的统一,具体可从体制出发,找出其对应关系,得出统一标准.本文将从网络评估的几个重要方面论述.说明不同体制网络评估的统一标准的量化.无线网络的评估基本上是围绕着覆盖.容量和质量三个方面进行的.在这一点

如何提高无线网络稳定性

所谓无线网络的稳定性?就是说信号应该是持续良好的,信号强弱程度应该是保持不变的,即使是信号弱的地方也不能出现一会弱一会没有一会又良好的现象.在实际应用中影响无线信号稳定性和连接速度的因素很多. 一.避免频段干扰: 频段:即"Channel"也叫信道,以无线信号作为传输媒体的数据信号传送通道.IEEE802.11b/g工作在 2.4-2.4835GHz频段(中国标准),这些频段被分为11或13个信道.在我们发布无线网络时都会选择一个频段,理论上讲同一个频段内无线网络过 多会严重影响信号的

笔记本电脑无线网络无法连接解决办法

过去能够连接到无线网络的笔记本电脑现在出现无线网络无法连接的情况(连接丢失或者无法再连接到无线网络). 可能的原因有: 未正确安装或已禁用无线设备 无线设备或路由器出现硬件故障 网络配置改变( SSID 或安全) 其他无线设备的干扰 NOTE: 并非所有笔记本电脑都配备有集成的无线联网设备. 如果笔记本电脑包装箱侧面的功能列表中未列出无线联网功能,可为笔记本电脑添加无线联网功能. 解决方案 使用下列一种或多种方法,诊断并解决笔记本电脑无法连接到所需无线网络的问题. NOTE: 执行这些操作前必须

保护无线安全了解无线网络入侵常法

  对于一般的人来说,只顾着享受无线带来的便利,却对安全性不加重视,这就很容易被个别"有心人"趁虚而入,其实入侵无线网络并不需要很高的技术含量,只要一些简单的电脑和网络常识,而防范的方法也很简单,只是许多人贪一时方便没有去注意,且看主人公小兵的故事. 我那天下班后回家,在电梯里听着住在楼下屋的两姐妹眉飞色舞地描述着家里如何无线上网,心想,平日里这两个电脑盲居然也玩起无线,以前电脑有个三长两短总叫我去看,这次如此大事居然把我晾在一边,在电梯里当我透明的.我很生气,后果很严重,看我怎么收拾

怎么简单查看Win7中无线网络密码

  步骤/方法 1经小虾工作室团队测试过,下面跟跟我们一起来看下: 1.在Windows 7任务栏通知区,点击无线网络图标,滑出当前无线连接的菜单来 2.选择你要查看密码的一个链接(如果不是你自己的无线连接就别看了,邻居的你也看不到除非你非法破解),在上面鼠标右键选择属性,此例以ruanmei为例: 3.点击显示字符项,嗯,这个无线网络的密码就明文显示了! 什么,是乱码?哦,这个不是乱码,是ASCII码,需要反推一下才能知道真正的密码(点击进入:ASC码在线查询)!例如图中的6B6B6B6B6B

首次揭秘|为6.4亿人次出行提供无线网络的技术架构

最近掌慧纵盈 大数据平台的架构师,分享了一篇文章很不错,转载到这里原文. 借助"互联网+大数据+机场"三轮驱动,掌慧纵盈每年为6.4亿人次出行提供无线网络连接服务. 随着业务的拓展,随之后来的挑战是数据量的暴增. 2016年,掌慧纵盈(股票代码:835736)通过阿里云产品,率先构建了业界领先的大数据平台. 本文阐述了一家物联网企业的业务架构和数据架构,以及技术选型的思考过程,和与业务需求相匹配的最终技术架构. 业务架构 掌慧纵盈的业务架构如图所示.我们的业务模式主要就是通过自有设备对