>271
前者だと演算子のたびに新しい文字列オブジェクトを生成するからね。
ま、ふつうは

print %Q(<p class="#{ck}">#{num}<p>)
print %Q(<input name="#{name}"〜)

とか書くわけだが。