<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,22 +1,42 @@
 class Vizinhanca
 
-  attr_accessor :tamanho_da_vizinhanca
+  attr_accessor :tamanho_da_vizinhanca, :lista_de_vizinhos
 
   def initialize tamanho_da_vizinhanca
     @tamanho_da_vizinhanca = tamanho_da_vizinhanca
+    @lista_de_vizinhos = []
+    @tamanho_da_vizinhanca.times do
+      @lista_de_vizinhos&lt;&lt;[]
+    end
   end
 
   def adiciona morador , vizinho
-
+    unless morador == vizinho
+      @lista_de_vizinhos[morador] &lt;&lt; vizinho
+    end
   end
 
   def vizinhos
-    if @tamanho_da_vizinhanca == 2
-      [ [1] ]
-    else
-      [[1,2],[0,2],[]]
-    end
-
+    @lista_de_vizinhos
   end
 
+  def melhor_lugar
+    lista_de_tamanhos=[]
+    @lista_de_vizinhos.each do |lista_do_morador|
+      lista_de_tamanhos &lt;&lt; lista_do_morador.size
+    end
+    menor = @tamanho_da_vizinhanca-1
+    lista_de_tamanhos.each do |numero_do_vizinhos|
+      if numero_do_vizinhos &lt; menor
+        menor = numero_do_vizinhos
+      end
+    end
+    melhores_lugares=[]
+    lista_de_tamanhos.each_with_index do |v, morador|
+      if v == menor
+        melhores_lugares &lt;&lt; morador
+      end
+    end
+    melhores_lugares
+  end
 end</diff>
      <filename>69-Vizinhos/lib/vizinhos.rb</filename>
    </modified>
    <modified>
      <diff>@@ -26,4 +26,32 @@ describe &quot;Vizinhanca&quot; do
     vizinhanca.vizinhos[0].should == [1,2]
   end
 
+  it &quot;nao deveria si propria como vizinho&quot; do
+    vizinhanca = Vizinhanca.new 2
+    vizinhanca.adiciona 0, 0
+    vizinhanca.adiciona 0, 1
+    vizinhanca.vizinhos[0].size.should == 1
+    vizinhanca.vizinhos[0].should == [1]
+  end
+
+  it &quot;deveria retornar o morador 1 quando lista de vizinhos eh [[1,2],[2],[0,1]]&quot; do
+    vizinhanca = Vizinhanca.new 3
+    vizinhanca.adiciona 0,1
+    vizinhanca.adiciona 0,2
+    vizinhanca.adiciona 1,2
+    vizinhanca.adiciona 2,0
+    vizinhanca.adiciona 2,1
+    vizinhanca.melhor_lugar.should == [1]
+  end
+
+  it &quot;deveria retornar o morador 2 quando lista de vizinhos eh [[1,2],[0,2],[0]]&quot; do
+    vizinhanca = Vizinhanca.new 3
+    vizinhanca.adiciona 0, 1
+    vizinhanca.adiciona 0, 2
+    vizinhanca.adiciona 1, 2
+    vizinhanca.adiciona 1, 0
+    vizinhanca.adiciona 2, 0
+    vizinhanca.melhor_lugar.should == [2]
+  end
+
 end</diff>
      <filename>69-Vizinhos/spec/vizinhos_spec.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>0ac47a6110ca5d3f2db6f13893678641ca23f68d</id>
    </parent>
  </parents>
  <author>
    <name>Thiago Rodrigues Colucci</name>
    <email>ticolucci@marvin.(none)</email>
  </author>
  <url>http://github.com/dojosp/participant-s-projects/commit/51dc573196f34dd3f08b34d2a40dd71c9bb9ce5c</url>
  <id>51dc573196f34dd3f08b34d2a40dd71c9bb9ce5c</id>
  <committed-date>2009-04-01T07:03:27-07:00</committed-date>
  <authored-date>2009-04-01T07:03:27-07:00</authored-date>
  <message>ajustando repositorio para dar push</message>
  <tree>5cda0d399444f621ce02c2348fddf4b945d3257a</tree>
  <committer>
    <name>Thiago Rodrigues Colucci</name>
    <email>ticolucci@marvin.(none)</email>
  </committer>
</commit>
