Submission #422334


Source Code Expand

n,q = gets.split.map(&:to_i)
 
$f = [*0..n]
 
def root(x)
 log = []
  (x=$f[x];log <<x) until $f[x] == x
 log.each { |y| $f[y] =x}
  x
end
 
q.times do
  p,a,b = gets.split.map(&:to_i)
 
  b,a = [a,b].shuffle
 
  case p
  when 0
    $f[root(a)] = $f[root(b)]
  when 1
    puts (root(a) == root(b)) ? 'Yes' : 'No'
  end
end

Submission Info

Submission Time
Task B - Union Find
User cookies
Language Ruby (2.1.5p273)
Score 100
Code Size 344 Byte
Status AC
Exec Time 1578 ms
Memory 6452 KB

Compile Error

./Main.rb:7: warning: `<<' after local variable or literal is interpreted as binary operator
./Main.rb:7: warning: even though it seems like here document

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 1
AC × 19
Set Name Test Cases
Sample 00_sample_01.txt
All 00_sample_01.txt, subtask_01_01.txt, subtask_01_02.txt, subtask_01_03.txt, subtask_01_04.txt, subtask_01_05.txt, subtask_01_06.txt, subtask_01_07.txt, subtask_01_08.txt, subtask_01_09.txt, subtask_01_10.txt, subtask_01_11.txt, subtask_01_12.txt, subtask_01_13.txt, subtask_01_14.txt, subtask_01_15.txt, subtask_01_16.txt, subtask_01_17.txt, subtask_01_18.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 131 ms 4704 KB
subtask_01_01.txt AC 843 ms 4832 KB
subtask_01_02.txt AC 70 ms 6368 KB
subtask_01_03.txt AC 1339 ms 4704 KB
subtask_01_04.txt AC 1306 ms 6372 KB
subtask_01_05.txt AC 147 ms 4708 KB
subtask_01_06.txt AC 147 ms 6372 KB
subtask_01_07.txt AC 1316 ms 4708 KB
subtask_01_08.txt AC 1357 ms 6452 KB
subtask_01_09.txt AC 58 ms 4708 KB
subtask_01_10.txt AC 70 ms 6408 KB
subtask_01_11.txt AC 1292 ms 4704 KB
subtask_01_12.txt AC 1326 ms 6372 KB
subtask_01_13.txt AC 1058 ms 4832 KB
subtask_01_14.txt AC 71 ms 6372 KB
subtask_01_15.txt AC 1271 ms 4744 KB
subtask_01_16.txt AC 1312 ms 6364 KB
subtask_01_17.txt AC 1578 ms 6372 KB
subtask_01_18.txt AC 1561 ms 6416 KB