CF217A.Ice Skating

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Bajtek is learning to skate on ice. He's a beginner, so his only mode of transportation is pushing off from a snow drift to the north, east, south or west and sliding until he lands in another snow drift. He has noticed that in this way it's impossible to get from some snow drifts to some other by any sequence of moves. He now wants to heap up some additional snow drifts, so that he can get from any snow drift to any other one. He asked you to find the minimal number of snow drifts that need to be created.

We assume that Bajtek can only heap up snow drifts at integer coordinates.

输入格式

The first line of input contains a single integer nn ( 1<=n<=1001<=n<=100 ) — the number of snow drifts. Each of the following nn lines contains two integers xix_{i} and yiy_{i} ( 1<=xi,yi<=10001<=x_{i},y_{i}<=1000 ) — the coordinates of the ii -th snow drift.

Note that the north direction coinсides with the direction of OyOy axis, so the east direction coinсides with the direction of the OxOx axis. All snow drift's locations are distinct.

输出格式

Output the minimal number of snow drifts that need to be created in order for Bajtek to be able to reach any snow drift from any other one.

输入输出样例

  • 输入#1

    2
    2 1
    1 2
    

    输出#1

    1
    
  • 输入#2

    2
    2 1
    4 1
    

    输出#2

    0
    
首页