そろそろ同級生の結婚が増えてきたので母親からの圧力やばい
オレが高校生の恋心をいつまでも引きずっている
ストーカー野郎だということを
一生独身が3割を超える現代社会の流れに乗っていることを
母はまだ知らない.
......
あっ, どーも僕です.
カレーづくり
実は結城浩先生のカレーの問題に挑戦していましたのですが
自分では解けず解答を提出できずに詰みました.
しかし, このままではなん成長も得られないので
あまつぶさんの解答をRで実装してみました.
あまつぶ: Memo/Q210
途中まではうまくいったのですが, 最後のマトリックスづくりで,
BとCをどうやってわければよいのかわからずこれもまた詰んでしまいました.
悔しいとこですが, わからないので途中までを載せておきます.
# ****************************************** # 結城先生のカレーづくり # あまつぶさんの解答参考にRで実装 # ***************************************** # step0 データ Blend <- read.table(file = "blendlist.txt", header = F, stringsAsFactors = T) # step1 どのスパイスが何回でてくるのか spices <- union(Blend[,1], Blend[,2]) #和集合 nspices <- length(spices) spice.counts <- sapply(spice, function(x, d) sum(d == x), Blend) spice.counts[which.max(spice.counts)] #最も多く関係している # Minnlabic # 44 spice.counts[which.min(spice.counts)] #最も少なく関係している # Tamaoc # 22 # step2 相性の良いスパイスのマトリックス good.relation <- sapply(spices, function(x) ifelse(spices %in% union(Blend[Blend[,1] == x, 2] , Blend[Blend[,2] == x, 1]) , 1, 0)) row.names(good.relation) <- spices # step3 基準をつくって相性の良いスパイスが22個以上を探す # Minnlabic Minnlabic.relation.count <- sapply(1:nspice, function(x) sum(good.relation["Minnlabic", ] == 1 & good.relation[x,] == 1)) Minnlabic.relation <- data.frame(name = spices[Minnlabic.relation.count >= 22], count = relation.count[relation.count >= 22]) # step4 選択したスパイスでの得点をみる computeBlendPoint <- function(spice.plate1, Blend, spices){ plate1.score <- sum(apply(Blend, 1, function(x) x[1] %in% spice.plate1 & x[2] %in% spice.plate1)) spice.plate2 <- setdiff(spices, spice.plate1) plate2.score <- sum(apply(Blend, 1, function(x) x[1] %in% spice.plate2 & x[2] %in% spice.plate2)) cat("plate1.score = ", plate1.score, "\n") cat("plate2.score = ", plate2.score, "\n") cat("total = ", plate2.score + plate1.score, "\n") return(as.character(spice.plate2)) } result1 <- computeBlendPoint(Minnlabic.relation[,1], Blend, spices) # step5 良いマトリックスへはわからない ^^;
うーん解答みても辿りつけず.
さすが, 真面目系クズと陰口叩かれるだけあり, センスがないですね.
穴に入りたい。。。。。。。。。。