- f <- function(n){
- if(n==1) return(matrix(1))
- else if(n==2) return(matrix(c(1,4,2,3),nrow=2))
- else{
- a <- seq((4*n-4),(3*n-1),-1)
- b <- (n+1):(2*n-2)
- c <- 1:n
- d <- seq((3*n-2),(2*n-1),-1)
- return(rbind(c,cbind(a,f(n-2)+4*n-4,b),d))
- }
- }
- f(5)