Skip to content

Instantly share code, notes, and snippets.

@shibayu36
Created September 15, 2012 14:16
Show Gist options
  • Save shibayu36/3728151 to your computer and use it in GitHub Desktop.
Save shibayu36/3728151 to your computer and use it in GitHub Desktop.
my $booklist = qq[レベル7||450
さまよう刃|100|250
夜は短し歩けよ乙女|258|200
彼女と僕の伝奇的学問|368
彼女は存在しない||500
レイクサイド|105|150
モダンタイムス(上)|368|250
モダンタイムス(下)|368|250
浜村渚の計算ノート||350
ゼロ、ハチ、ゼロ、ナナ。||651
空飛ぶタイヤ(上)||550
空飛ぶタイヤ(下)||550
双頭の悪魔|798|700
グレイヴディッガー|298|200
やがて目覚めない朝が来る||400
鉄の骨|598|400
Rのつく月には気をつけよう|298|150
人形館の殺人|105|200
テロリストのパラソル|105|105
古都|189
ある閉ざされた雪の山荘で|258
クリムゾンの迷宮|458
旅のラゴス
十角館の殺人||300
イニシエーション・ラブ|189
葉桜の季節に君を想うということ||200
ロートレック荘事件||450
ラッシュライフ|105|250
フィッシュストーリー|258|200
木洩れ日に泳ぐ魚|189|105
拝金|328|150];
my ($e, $b);
my ($elist, $blist) = ([], []);
for (split /\n/, $booklist) {
my ($name, $ecost, $bcost) = split(/\|/, $_);
next if !$ecost && !$bcost;
$ecost ||= 100000;
$bcost ||= 100000;
my $cheaper = $ecost > $bcost ? $bcost : $ecost;
if ($cheaper > 500) {
print "$name is expensive a bit\n";
next;
}
if ($ecost >= $bcost) {
push $blist, $name;
$b += $bcost;
}
elsif ($ecost < $bcost) {
push $elist, $name;
$e += $ecost;
}
}
use Perl6::Say;
say '====== result =========';
say "ebookoff";
say $e;
say join(', ', @$elist);
say;
say "bookoff online";
say $b;
say join(', ', @$blist);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment