2014-12-06 81 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