2014-12-06 108 views
-1

誰能告訴我如何解決錯誤爲標題? 如何使用嵌套的if-else語句? 謝謝美國語法錯誤,意外keyword_else

b = Array.new(n,0) 
c = Array.new(n) {Array.new(n,0)} 
n.times do |i| 
    a[i], b[i] = gets.split(" ").map(&:to_i) 
end 

n.times do |i| 
    w.times do |j| 
     i=i+1 
     j=j+1 
     if a[i-1] > j || i > k then 
      c[i][j] = c[i-1][j] 
     else 
      if c[i-1][j] < c[i-1][j-a[i-1]]+b[i-1] then 
       c[i][j] = c[i-1][j-a[i-1]]+b[i-1] 
       k-- 
      else 
       c[i][j] = c[i-1][j] 
      end 
     end 
    end 
end 
+0

使用'elsif' .... – 2014-12-06 04:46:04

回答

2

在Ruby中沒有這樣的事情,增量/減量運算符。

k--替換爲k -= 1

您也可以使用複合運算符這些:

i += 1 # previously i=i+1 
j += 1 # previously j=j+1