「安倍が死ねば、日本は幸せになる」という命題があるとき、安倍が死んでないならこの命題は必ず真at MATH「安倍が死ねば、日本は幸せになる」という命題があるとき、安倍が死んでないならこの命題は必ず真 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト227: stack (converted to one row matrix) .checked <<- .stack # checked list # pouring methods a2b <- function(abc){ # pour from A to B a=abc[1];b=abc[2];c=abc[3] if(a+b > Bmax) c(a+b-Bmax,Bmax,c) else c(0, a+b, c) } a2c <- function(abc){ a=abc[1];b=abc[2];c=abc[3] if(a+c > Cmax) c(a+c-Cmax, b, Cmax) else c(0, b, a+c) } b2c <- function(abc){ a=abc[1];b=abc[2];c=abc[3] if(b+c > Cmax) c(a, b+c-Cmax,Cmax) else c(a, 0, b+c) } b2a <- function(abc){ a=abc[1];b=abc[2];c=abc[3] if(b+a > Amax) c(Amax, b+a-Amax,c) else c(b+a, 0, c) } c2a <- function(abc){ a=abc[1];b=abc[2];c=abc[3] if(c+a > Amax) c(Amax, b, c+a-Amax) else c(c+a, b, 0) } c2b <- function(abc){ a=abc[1];b=abc[2];c=abc[3] if(c+b > Bmax) c(a, Bmax, c+b-Bmax) else c(a, c+b, 0) } actions = c(a2b,a2c,b2c,c2a,c2a,c2b) # all pouring method 228:132人目の素数さん 18/11/20 12:14:40.41 cFR1wwH3.net is.rim <- function(row,matrix){ # is row in matrix? any(apply(matrix,1,function(x) all(x==row))) # comparble to %in% } is.goal <- function(x){ # goal reached? all(x==goal) } pop <- function(){ # pop LIFO if(is.null(.stack)) return() LIFO=.stack[1,] if(nrow(.stack)==1) .stack <<- NULL else .stack <<- .stack[-1,] # changed GLOBALLY return(LIFO) } push <- function(rows){ # push rows at head of stack if(is.null(rows)) invisible(NULL) # no NULL show else .stack <<- rbind(rows , .stack) # changed GLOBELY } transfer <- function(x){ # return unchekcked transferred state re=NULL for(fun in actions){ # try all methods v=fun(x) # drop checked state and itself if(!is.rim(v,.checked) & !all(v==x)) re=rbind(re,fun(x)) } uni.re=unique(re) # delete duplicated .checked <<- rbind(uni.re,.checked) # add to .checked GLOBELY return(uni.re) } state=NULL while(!is.goal(.stack[1,])){ push(transfer(pop())) state=rbind(state,.stack[1,]) } return(state) } 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch