LOSTNSURVIVED - Lost and survived
On September 22, 2004, Oceanic Flight 815 crashed on a mysterious island somewhere in the pacific.
There actually were survivors in the crash, N survivors. The mysterious island kept on moving in space - time, so no rescue reached them.
Initially every survivor was on his own. But soon they realized there are these “The Others” (Scientists of damn Dharma Initiative) on this Island too.
So to protect themselves from mad Scientists they started uniting into groups after Dr. Shephard said “Live together or die alone”.
You have to handle Q queries; which consist of two survivors becoming friends and thereby uniting their respective groups into a larger group.
After each query, output the difference between the group of largest size and group of smallest size at that time.
If there is only one group, output 0. At first, everyone is in their own group.
Also note, if the two survivors in the query are already in the same group, print the current answer, and skip merging groups.
Also do comment if you have watched Lost :-p
Input
The first line consists of two space separated integers, N and Q
The next Q line consists of two integers, A and B, meaning that
survivor A and survivor B became friends uniting there groups.
Output
Output Q lines, the answer after each query.
1<=N<=100000
1<=Q<=100000
Example
Input: 5 3 1 2 2 3 5 4 Output: 1 2 1
hide comments
Arpit Uppal:
2016-01-22 16:28:30
There is no '.' (dot) in the output as stated in the given test case in the answer to the final query as "1."
|
|
Advitiya:
2016-01-22 09:25:19
DSU :) |
|
:.Mohib.::
2016-01-21 20:52:38
Nice one..!! |
Added by: | Umang Malhotra |
Date: | 2016-01-21 |
Time limit: | 1s |
Source limit: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Languages: | All except: ASM64 MAWK BC NCSHARP COFFEE DART FORTH GOSU JS-MONKEY JULIA KTLN OCT PROLOG PYPY3 R RACKET SQLITE SWIFT UNLAMBDA |
Resource: | codemonk- hackerearth |