Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 11th, 2012  |  syntax: None  |  size: 1.01 KB  |  hits: 11  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Why can't I set the value for a multidimensional array?
  2. class Solution
  3.  
  4.     def initialize
  5.       @solution_matrix = [[[]]]
  6.     end
  7.  
  8.     def [](receiver, provider, moment)
  9.         return @solution_matrix[receiver][provider][moment]
  10.     end
  11.  
  12.     def []=(receiver, provider, moment, value)
  13.       puts "making " + receiver.to_s + " : " +  provider.to_s + " : " +moment.to_s + " -> " + value.to_s
  14.       @solution_matrix[receiver][provider][moment] = value
  15.     end
  16.        
  17. @solution[2,3,15]=false;
  18.        
  19. making 2 : 3 : 15 -> false
  20.        
  21. def list_disconnected
  22.     number_of = 0
  23.     for receiver in 0...@problem.number_of_receivers
  24.       for provider in 0...@problem.number_of_providers
  25.         for moment in 0...@problem.number_of_moments
  26.           if (@solution[receiver,provider,moment]==false)
  27.             puts receiver.to_s + " : " +  provider.to_s + " : " +moment.to_s
  28.             number_of += 1
  29.           end
  30.         end
  31.       end
  32.     end  
  33.     puts number_of
  34.   end
  35.        
  36. number of receivers: 40
  37. number of providers: 6
  38. number of moments: 50