poj 2236 Wireless Network 并查集

第4章-07-将WebDriver获取的Cookie传递给Requests 在使用Selenium WebDriver获取了浏览器的Cookies之后,你可以将这些Cookies传递给requests库,以便在后续的HTTP请求中使用这些Cookies。这样做可以让你模拟浏览器会话,使得请求看起来像是从之前使用Selenium WebDriver控制的浏览器发出的。 阅读详情

Wireless Network , 原文链接, click here

Description

An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wireless network with the lap computers, but an unexpected aftershock attacked, all computers in the network were all broken. The computers are repaired one by one, and the network gradually began to work again. Because of the hardware restricts, each computer can only directly communicate with the computers that are not farther than d meters from it. But every computer can be regarded as the intermediary of the communication between two other computers, that is to say computer A and computer B can communicate if computer A and computer B can communicate directly or there is a computer C that can communicate with both A and B.

In the process of repairing the network, workers can take two kinds of operations at every moment, repairing a computer, or testing if two computers can communicate. Your job is to answer all the testing operations.

Input

The first line contains two integers N and d (1 <= N <= 1001, 0 <= d <= 20000). Here N is the number of computers, which are numbered from 1 to N, and D is the maximum distance two computers can communicate directly. In the next N lines, each contains two integers xi, yi (0 <= xi, yi <= 10000), which is the coordinate of N computers. From the (N+1)-th line to the end of input, there are operations, which are carried out one by one. Each line contains an operation in one of following two formats:
1. “O p” (1 <= p <= N), which means repairing computer p.
2. “S p q” (1 <= p, q <= N), which means testing whether computer p and q can communicate.

The input will not exceed 300000 lines.

Output

For each Testing operation, print “SUCCESS” if the two computers can communicate, or “FAIL” if not.

Sample Input

4 1
0 1
0 2
0 3
0 4
O 1
O 2
O 4
S 1 4
O 3
S 1 4

Sample Output

FAIL
SUCCESS

题意:给你一个N和一个d,N表示有N台电脑,编号从1开始,d表示的是给定的距离,如果两台电脑的距离不大于d就能够直接相连.之后输入"O a"代表编号为a的电脑被修复,"S a b"代表的是查询编号为a和编号为b 的电脑是否能够直连.

这是一道很模板的并查集,需要每次都遍历一遍,之前想着每次遍历可能会超时,但是好像除了重新遍历一遍也没有别的思路可以写的了,还有就是输出坑了,我一直以为是”FALL”结果WA了好多次,感觉改了这么久应该对了,结果到最后想了想问题可能出在输出上面,仔细看了看,发现是”FAIL”,英语不好真心累!!
扯多了,上代码.


#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<math.h>
#include<string>
#include<string.h>
using namespace std;
const int maxn= 1100;
int f[maxn],n,d;
bool vis[maxn];
struct node
{
    int x,y;
}a[maxn];
//找爹函数;
int find(int x)
{
    if(f[x]!=x)
        f[x]=find(f[x]);
    return f[x];
}
//求距离;
int dis(node a,node b)
{
    return ((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
}
int main()
{
    scanf("%d%d",&n,&d);
    char q[2];
    int x,y,abc;
    memset(vis,false,sizeof(vis));
    for(int i=1;i<=n;i++)
    {
        f[i]=i;//初始化f[]数组;
        scanf("%d%d",&a[i].x,&a[i].y);
    }
    while(~scanf("%s",q))
    {
        if(q[0]=='O')
        {
            scanf("%d",&abc);
            x=find(abc);
            vis[abc]=true;
            for(int i=1;i<=n;i++)
                if(i!=abc&&vis[i])//判断,如果该电脑没有被操作过;
                {
                    y=find(i);
                    if(x!=y&&d*d>=dis(a[i],a[abc]))//如果父亲结点不一样,赋值;
                        f[y]=x;
                }
        }
        else
        {
            int c,d;
            scanf("%d%d",&c,&d);
            if(find(c)==find(d))//判断是否父亲节点一样;
                printf("SUCCESS\n");
            else
                printf("FAIL\n");
        }
    }
    return 0;
}
深入探讨:StoreKit 2的交易处理与收据验证 iOS应用开发中,StoreKit 2带来收据处理和交易验证的新变化。本文通过实例分析,对比传统StoreKit与StoreKit 2的差异,指出直接访问sandboxReceipt文件可能引发错误。解决方案是使用Transaction对象和SKReceiptRefreshRequest,详细介绍了如何初始化ReceiptLoader、处理交易更新及验证收据的完整流程,帮助开发者适应新框架,确保购买流程安全可靠。 阅读详情

相关推荐

Unity雷达图效果实现

unity雷达图源码

a604263644的博客 1026

Fix the computers(解题报告)

Fix the computers                                   Time Limit:10000MS    Memory Limit:65536KB    64bit IO Format:%I64d & %I64u Description An earthquake takes place in Southeast Asia.

代码艺术的道与术 988

windows中如何将已安装的nodejs高版本降级为低版本

第一步:先清空本地安装的node.js版本 1.按健win+R弹出窗口,键盘输入cmd,然后敲回车(或者鼠标直接点击电脑左面最左下角的win窗口图标弹出,输入cmd再点击回车键) 然后进入命令控制行窗口,并输入where node查看之前本地安装的node的路径 2.找到上面找到的路径,将node.exe所在的父目录里面的所有东西都删除 3.为了彻底删除之前安装的node.js,鼠标点击电脑左面最左下角的win窗口图标弹出,输入“控制面板”再点击回车键进入,进入控制面板后,找到所安装的node.js并

weixin_44582077的博客 9万+

POJ 2236 Wireless Network 简单并查集

一道简单的并查集,稍微麻烦了点,注意一下细节就可以了,没什么难度。。题目: Wireless Network Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 11457   Accepted: 4884 Description An earthq

2767

从UC3842的FB脚到COMP脚:一次讲透反激电源两种光耦反馈接法的选择与实战

本文深入探讨了UC3842 PWM控制器在反激式开关电源设计中的两种光耦反馈接法:FB脚与COMP脚方案。通过分析信号极性差异、稳定性特点及动态响应性能,提供场景化选型指南和可靠性设计要点,帮助工程师优化反馈环路设计,提升系统稳定性与效率。特别针对TL431和PC817等关键元件在温度漂移、老化衰减等实际问题给出解决方案。

weixin_28717683的博客 704

vc formal实例

gui 方式启动命令,

weixin_45077935的博客 682

POJ 2236 Wireless Network(并查集)

题目链接: POJ 2236 Wireless Network 题意:有N台损坏了电脑,给出N台电脑的坐标,已知当两个修好的电脑间的距离小于等于d时,两台修好的电脑可以连通。 两台连通的电脑之间可以有若干台电脑作为桥梁。 有两种操作:O,P:修好第P台电脑 S P,Q:询问第P台电脑和第Q台电脑是否连通。 对于每一条询问如果连通输出“SUCCESS”,未连通输出“FAIL”。 分析:

ramay7 450

离线安装vue脚手架,内网安装@vue/cli

公司开发环境使用内网,无法用外网,搭建环境的时候,发现内网系统没有安装vue脚手架,我搜了很多文章,发现他们的方法对我都不适用,然后就自己摸索,最终皇天不负有心人,终于被我安装上了,一下是我内网离线安装vue/cli的方法,希望能帮助到有需要的小伙伴! 因为npm被集成在nodejs中,而安装nodejs只需要把nodejs安装包copy到内网电脑安装就行,比较简单,这里就不多做演示。 在外网电脑上,使用npm install -g xxxx命令下载好我们所需要的各个安装包,比如: npm insta

Liberty_yes的博客 1万+

POJ - 2236Wireless Network-并查集

POJ - 2236 Wireless Network Time Limit:10000MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64u SubmitStatus Description An earthquake t...

aoe41606的博客 143

windows10下 iperf3测试带宽

客户端输入:"iperf3.exe -u -c 服务器IP地址 -b 5g" //客户端给服务器发送udp数据包,最大带宽为5g。客户端输入:“iperf3.exe -c 服务器IP地址 -P 10“//表示客户端10路并行给服务器发送TCP包;上图可知:带宽是15Gbps(这里不知道为什么下面测试的UDP会比这里TCP慢 按道理UDP不可能比TCP慢的5.)3. 验证是否下载成功,在打开的窗口中输入“iperf3.exe -v”,会出现安装的版本,表示安装成功了。5. iperf3参数。

xiaoqixiaoguai的博客 5889

【Qt】解决 FTH: (11284): *** Fault tolerant heap shim applied to current process. (亲测有效)

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers。容错堆垫片应用到当前的过程。这通常是由于以前的崩溃。win + r,输入regedit。

Fanjufei的博客 830

POJ2236 Wireless Network 并查集

Wireless Network 题目链接:http://poj.org/problem?id=2236 这道题是一个简单的并查集,唯一不同的是,一开始所有点都是不可用的,要进行一个操作才能将点维修好,还有一个就是查询,基本没啥改变,就是一个并查集板子题吧。 另外要提到的就是路径压缩的问题,虽然这道题并没有这个要求,但在其他的题目上可能会需要压缩路径来节约许多查找的时间 如下: int find...

时夜2333的农场 861

Python re库【正则表达式操作库】全面讲解及代码示例

以下是Pythonre库的全面讲解,包含主要功能、常用方法及代码示例。完整代码和注释附后。正则表达式(Regular Expression)是用于匹配、查找、替换字符串的工具,通过特定语法定义模式。?{n}[...][a-z]A|B\d[0-9]\D\s\S\w\Wre从字符串匹配模式,返回Match对象或None。在字符串中第一个匹配项,返回Match对象或None。返回所有匹配项的。返回所有匹配项的Match对象)。替换匹配项,返回新字符串。根据模式分割字符串,返回列表。通过。

记录点滴 1161

[POJ 2236]Wireless Network[并查集]

题目链接:[POJ 2236]Wireless Network[并查集] 题意分析: 电脑网络全部被破坏了,如今能做的是两个操作:一、修复某个电脑;二、查询两个电脑间能否交流。两台电脑能交流的情况是:两台都被修复了,并且两台相距小于d米或者两台之间能借由其它电脑相互联系 解题思路: 当某台电脑被修复时,遍历所有它能连接到的结点,如果所连接结点是被修复的,就将它归入到同一集合。这样每次查询的

闲停 509

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

POJ 2236 Wireless Network 并查集

POJ 2236 Wireless Network 并查集

SHU_onisac的博客 863

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

【并查集】POJ 2236 Wireless Network

POJ 2236 Wireless Network 题意: 就是有N台电脑,编号1…N,然后这些电脑有各自的坐标位置。如果输入‘O’(说起这个‘O’我可真是醉了,它的题面上长得跟‘0’一样,编译器上看着也是一样的,开始一直跑不出来,才发现!哦!原来是‘O’!),代表这台电脑可以联网。如果输入‘S’,那么就需要判断后面输入的两个电脑是不是可以互相连通。两个电脑互相连通的条件是:1. 两台电脑各自都...

L_X_ 209

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

[并查集] Poj2236 Wireless Network java版

题目链接: http://poj.org/problem?id=2236 import java.util.ArrayList; import java.util.List; import java.util.Scanner; public class Main { static int father[]; public static void main(String[] args) ...

A-lex的博客 473

poj2236 Wireless Network 并查集

题目链接:here PS:第一次自己看英文!!第一次不是百度的题意!!!! 题意:东南亚大地震。。他们电脑全坏了。(我去质量真差,神舟的么)。然后人要过去修。。需要把电脑都联网,但是硬件限制,所以电脑只能在 d 距离内成功联网。。。第一行输入电脑个数n和d的值,接着n行,是n个电脑的坐标。。然后接下来有操作。。。O代表修第几台电脑,S代表检测 两台电脑是否已经联网。。。注意这里要用EOF来结束

671coder的专栏 1855

POJ2236 Wireless Network 并查集

题目大意:输入n和d,n代表标号为1到n的电脑,下面n行每行是一台电脑的坐标,每两台电脑只有相距不超过d时才算相连,然后给出若干组操作,每一组操作表示维修电脑x或者询问x和y是否相连,让判断对于每次询问的结果。 用并查集纪录每一次维修后可以相连的电脑,然后对于每一次询问,我们只需判断x和y是否有相同的根结点即可。 #include #include #include using n

AC_Gibson的专栏 623

POJ 2236 Wireless Network 【并查集】

Wireless Network Time Limit: 10000MS   Memory Limit: 65536K Total Submissions: 24091   Accepted: 10022 Description· An earthquake takes place in Southeast Asia. The ACM (

博客已搬迁到http://www.cnblogs.com/cniwoq/ 388

Wireless Network POJ - 2236 并查集

一、内容 An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wireless network with the lap computers, but an unexpected aftershock attacked, all computers in ...

Tizzi的博客 1281

POJ 2236 Wireless Network【并查集】

Description An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wireless network with the lap computers, but an unexpected aftershock attacked, all computers in the network were all broken. The computers are re

memcpy0的博客 392

Wireless Network POJ-2236 并查集

POJ-2236 An earthquake takes place in Southeast Asia. The ACM (Asia Cooperated Medical team) have set up a wireless network with the lap computers, but an unexpected aftershock attacked, all computers in the network were all broken. The computers are repai

qq_46173805的博客 732

poj 2236 Wireless Network(并查集)

并查集

繁华过后你还有我 994

POJ2236,Wireless Network,并查集

题意就不解释了; 这道题目怎么用并查集做呢?举个例子,若a,b之间的距离小于d,说明a,b可以通信,用并查集把它们俩连在一起,这时候,倘若,a,c之间的距离也小于d,a,c之间就可以通信,那么b,c也可以通信,用并查集把a,c连在一起,此时,a,b,c连在一棵树上,表明了它们之间互相可以通信(直接或间接);同理,不在同一棵树上的点不能实现通信; 下面这段话写给自己看的 = = : 刚

北 438
上一篇: 搞ACM的伤不起!
下一篇: hdu 1754 I Hate It 线段树
落幕丶式
博客等级 码龄11年 2粉丝 45原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值