CodeIQ MAGAZINECodeIQ MAGAZINE

「第8回デスマコロシアム」問題のトーナメント結果発表です!~優勝者は……! #デスマコロシアム

2015.01.09 Category:CodeIQ問題解説・リーダーボード Tag:

  • 20
  • このエントリーをはてなブックマークに追加
tbprg_badge_deathma

第8回デスマコロシアムのトーナメント結果発表です。
今回のチャンピオンはどなたでしょうか?

優勝、準優勝、最小賞の方には、デスマコロシアム チャンピオンバッジが付与されます!
by tbpgr

1.はじめに

「第8回デスマコロシアム」へようこそ!

この記事は

  • トーナメントの参加集計
  • トーナメントの結果発表
  • 参加された皆様の解答例

の3本立てでお送りします。

2.トーナメントの参加集計

エントリー結果

挑戦者数 正解者数 不正解者数
89 87 (97.75%) 2 (2.25%)

チーム内訳

Total PM TL DB SE PG
261 37 (14.18%) 60 (22.99%) 53 (20.31%) 56 (21.46%) 55 (21.07%)

チーム内訳(グラフ)

言語内訳

言語名 人数 言語ペナルティ 最小文字数 平均文字数
Assembler (nasm-2.10.01) 1 0 point 52 52
AWK (gawk) 1 0 point 65 65
AWK (mawk) 1 0 point 52 52
Bash 1 0 point 53 53
Brainf**k 2 -10 point 93 1320
C# 7 -60 point 78 144
C++ 4.3.2 1 0 point 64 64
C++ 4.8.1 2 -10 point 54 97
C++11 2 -10 point 74 74
C99 strict 2 -10 point 54 57
C 4 -30 point 53 87
D (dmd) 1 0 point 1128 1128
Fortran 1 0 point 56 56
Groovy 3 -20 point 48 101
Haskell 1 0 point 154 154
Icon 1 0 point 72 72
Java7 1 0 point 60 60
JavaScript (rhino) 1 0 point 94 94
JavaScript (spidermonkey) 3 -20 point 83 90
Java 4 -30 point 89 266
Node.js 1 0 point 112 112
Octave 4 -30 point 24 24
Pascal (fpc) 2 -10 point 80 128
Perl 6 2 -10 point 39 39
Perl 4 -30 point 33 50
PHP 3 -20 point 66 69
Python 3 5 -40 point 54 89
Python 10 -90 point 50 96
Ruby 7 -60 point 38 63
R 2 -10 point 39 49
Scala 2 -10 point 47 49
Smalltalk 2 -10 point 56 100
SQL 1 0 point 279 279
Tcl 1 0 point 110 110
Whitespace 1 0 point 135 135

言語内訳(グラフ)

青:2014/12/27 02:20 時点の人数
赤:2014/12/28 20:00 締め切り時の人数

最小文字数

最小文字数達成者にはチャンピオンバッジを付与します。
※付与するバッジは一番上位のものを1つだけです。
※以下のリストは敬称略

言語 文字数 名前
Octave 24 tails,えちごやえちぜん,suppy193

言語別最小文字数

言語別最小文字数達成者には強豪バッジを付与します。
※付与するバッジは一番上位のものを1つだけです。
※以下のリストは敬称略

言語 文字数 名前
AWK (gawk) 65 kuuso
AWK (mawk) 52 216hito
Assembler (nasm-2.10.01) 52 みけCAT
Bash 53 しゃろ
Brainf**k 93 Azicore
C 53 Mattsun
C# 78 Arith_td
C++ 4.3.2 64 NeoCat
C++ 4.8.1 54 冬椿
C++11 74 unsre,BATEL
C99 strict 54 Mu
D (dmd) 1128 カズタロス
Fortran 56 ぶん
Groovy 48 gogoweb_ikeda
Haskell 154 oneofmysandbox
Icon 72 ウッキー竹脇
Java 89 yasuhiro
Java7 60 チョコレートバー
JavaScript (rhino) 94 k.hamada
JavaScript (spidermonkey) 83 梅丸
Node.js 112 ふじいり
Octave 24 tails,えちごやえちぜん,suppy193
PHP 66 EEL733
Pascal (fpc) 80 pik
Perl 33 naoki_kp
Perl 6 39 ciel,ym_base
Python 50 Chatnoir
Python 3 54 yuma25689,tatsy,vector,MarlTake
R 39 gmk
Ruby 38 todaemon
SQL 279 KAZAMAI_NaruTo
Scala 47 rotary-o
Smalltalk 56 ぷらは
Tcl 110 カニ戯(ry
Whitespace 135 %20

3.トーナメント結果発表

お待たせ致しました!
トーナメント結果の発表です。
結果はベスト64から発表致します。
ベスト64で勝てば強豪バッジ獲得です!

※名前の載っていない方は残念ながら予選落ちとなります。
※トーナメント表は敬称略

トーナメント表に関する補足説明

  • 「結果ポイント」はチームの勝敗によるポイントと言語ペナルティの合計です
  • 「デスマ発生」はデスマーチの発生した試合の場合に○になります
  • 「引分ランダム決着」はポイントが同点かつ言語ペナルティも同点になり、
    ランダム抽選による勝敗決定になった場合に○になります

ベスト64

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
× 小早川中佐 GGG Java -30 -437 -467 × ×
todaemon SLS Ruby -60 -38 -83 × ×
× ryosukeA DLD Ruby -60 -40 -90 × ×
naoki_kp LDS Perl -30 -33 -58 × ×
× Azicore SSS Brainf**k -10 -93 -93 × ×
tnakao LSG Perl -30 -51 -81 × ×
rotary-o SLD Scala -10 -47 -47 × ×
× gogoweb_ikeda GMG Groovy -20 -48 -63 × ×
× Mattsun MGS C -30 -53 0 ×
トロ GGG C -30 -155 0 ×
ぶん DSL Fortran 0 -56 -41 × ×
× ニックネーム999 SLD C -30 -55 -85 × ×
× カニ戯(ry GGG Tcl 0 -110 -110 × ×
CORDEA SDL Perl -30 -50 -65 × ×
ciel LLL Perl 6 -10 -39 -44 × ×
× Chatnoir LDS Python -90 -50 -135 × ×
× tails GMM Octave -30 -24 0 ×
kuuso GGG AWK (gawk) 0 -65 0 ×
Mu GGG C99 strict -10 -54 -64 × ×
× MarlTake SLD Python 3 -40 -54 -79 × ×
ym_base DDD Perl 6 -10 -39 -49 × ×
× 梅丸 DLL JavaScript (spidermonkey) -20 -83 -93 × ×
× なおゆら SDL Ruby -60 -45 -105 × ×
KTazakik SML Scala -10 -51 -56 × ×
チョコレートバー SLD Java7 0 -60 -55 × ×
× ぷらは LSD Smalltalk -10 -56 -61 × ×
× soy-curd MLD Python -90 -149 -229 × ×
uqtimes DSG Python -90 -112 -197 × ×
えちごやえちぜん GGG Octave -30 -24 -54 × ×
× baseman LDS Perl -30 -65 -80 × ×
× ボヤッキー MGL Python -90 -64 -149 × ×
BATEL DDS C++11 -10 -74 -74 × ×
PascalChan LDG Pascal (fpc) -10 -176 0 ×
× しゃもじぃ MMM JavaScript (spidermonkey) -20 -103 10 ×
× k.hamada DSM JavaScript (rhino) 0 -94 -84 × ×
rs_fan SSS R -10 -59 -69 × ×
216hito SSS AWK (mawk) 0 -52 -47 × ×
× srt LDS C99 strict -10 -60 -65 × ×
× KAZAMAI_NaruTo MMM SQL 0 -279 -264 × ×
みけCAT SLD Assembler (nasm-2.10.01) 0 -52 -52 × ×
angel SSS Octave -30 -25 -40 × ×
× unsre LLL C++11 -10 -74 -84 × ×
× せきゅあ LDS Brainf**k -10 -2546 -2551 × ×
tatsy SLG Python 3 -40 -54 -84 × ×
× alluser SSD JavaScript (spidermonkey) -20 -84 -104 × ×
oda1979 DSL Ruby -60 -43 -93 × ×
× manman GSM Ruby -60 -128 -183 × ×
NeoCat LSD C++ 4.3.2 0 -64 -59 × ×
gmk DDL R -10 -39 -39 × ×
× yasuhiro SMD Java -30 -89 -114 × ×
× Tanglevine LDG Groovy -20 -181 -196 × ×
冬椿 LSD C++ 4.8.1 -10 -54 -59 × ×
ふじいり LMD Node.js 0 -112 -102 × ×
× ukazu MDG Python -90 -65 -150 × ×
× oneofmysandbox SDG Haskell 0 -154 -149 × ×
EEL733 LLL PHP -20 -66 -76 × ×
pik LGM Pascal (fpc) -10 -80 -80 × ×
× じんとま GSD C++ 4.8.1 -10 -140 -145 × ×
ほげ MGL PHP -20 -70 -85 × ×
× まりも666 MDG Java -30 -170 -195 × ×
× %20 GGG Whitespace 0 -135 -135 × ×
vector GGG Python 3 -40 -54 -94 × ×
yuma25689 LDS Python 3 -40 -54 -94 × ×
× ゆぴか MMM Python 3 -40 -231 -256 × ×

ベスト32

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
× todaemon SLS Ruby -60 -38 -88 × ×
naoki_kp LDS Perl -30 -33 -63 × ×
× tnakao LSG Perl -30 -51 -76 × ×
rotary-o SLD Scala -10 -47 -47 × ×
× トロ GGG C -30 -155 -185 × ×
ぶん DSL Fortran 0 -56 -41 × ×
× CORDEA SDL Perl -30 -50 -75 × ×
ciel LLL Perl 6 -10 -39 -44 × ×
× kuuso GGG AWK (gawk) 0 -65 -65 × ×
Mu GGG C99 strict -10 -54 -64 × ×
ym_base DDD Perl 6 -10 -39 -44 × ×
× KTazakik SML Scala -10 -51 -51 × ×
チョコレートバー SLD Java7 0 -60 -55 × ×
× uqtimes DSG Python -90 -112 -192 × ×
えちごやえちぜん GGG Octave -30 -24 -54 × ×
× BATEL DDS C++11 -10 -74 -69 × ×
× PascalChan LDG Pascal (fpc) -10 -176 -181 × ×
rs_fan SSS R -10 -59 -59 × ×
216hito SSS AWK (mawk) 0 -52 -47 ×
× みけCAT SLD Assembler (nasm-2.10.01) 0 -52 -47 ×
angel SSS Octave -30 -25 -45 × ×
× tatsy SLG Python 3 -40 -54 -94 × ×
× oda1979 DSL Ruby -60 -43 -98 × ×
NeoCat LSD C++ 4.3.2 0 -64 -59 × ×
gmk DDL R -10 -39 -39 × ×
× 冬椿 LSD C++ 4.8.1 -10 -54 -59 × ×
× ふじいり LMD Node.js 0 -112 -107 × ×
EEL733 LLL PHP -20 -66 -81 × ×
pik LGM Pascal (fpc) -10 -80 -85 ×
× ほげ MGL PHP -20 -70 -85 ×
× vector GGG Python 3 -40 -54 -94 × ×
yuma25689 LDS Python 3 -40 -54 -79 × ×

ベスト16

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
× naoki_kp LDS Perl -30 -33 -63 × ×
rotary-o SLD Scala -10 -47 -42 × ×
× ぶん DSL Fortran 0 -56 -51 × ×
ciel LLL Perl 6 -10 -39 -44 × ×
× Mu GGG C99 strict -10 -54 -64 × ×
ym_base DDD Perl 6 -10 -39 -34 × ×
チョコレートバー SLD Java7 0 -60 -45 × ×
× えちごやえちぜん GGG Octave -30 -24 -54 × ×
× rs_fan SSS R -10 -59 -69 × ×
216hito SSS AWK (mawk) 0 -52 -52 × ×
angel SSS Octave -30 -25 -50 × ×
× NeoCat LSD C++ 4.3.2 0 -64 -59 × ×
gmk DDL R -10 -39 -49 × ×
× EEL733 LLL PHP -20 -66 -76 × ×
pik LGM Pascal (fpc) -10 -80 -85 × ×
× yuma25689 LDS Python 3 -40 -54 -89 × ×

準々決勝

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
× rotary-o SLD Scala -10 -47 -52 × ×
ciel LLL Perl 6 -10 -39 -44 × ×
ym_base DDD Perl 6 -10 -39 -44 × ×
× チョコレートバー SLD Java7 0 -60 -55 × ×
216hito SSS AWK (mawk) 0 -52 -52 × ×
× angel SSS Octave -30 -25 -55 × ×
gmk DDL R -10 -39 -44 × ×
× pik LGM Pascal (fpc) -10 -80 -80 × ×

準決勝

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
ciel LLL Perl 6 -10 -39 -34 × ×
× ym_base DDD Perl 6 -10 -39 -49 × ×
× 216hito SSS AWK (mawk) 0 -52 -47 × ×
gmk DDL R -10 -39 -39 × ×

決勝

勝敗 名前 チーム 言語 言語ペナルティ 文字数ペナルティ 結果ポイント デスマ発生 引分ランダム決着
ciel LLL Perl 6 -10 -39 -39 × ×
× gmk DDL R -10 -39 -49 × ×

デスマコロシアムの第8回チャンピオンは ciel 様になりました!!
おめでとうございます!

gmk 様も準優勝おめでとうございます。
お二人にはデスマコロシアム チャンピオンバッジを付与致します。

ベスト16まで勝ち残った方にはデスマコロシアム 豪傑バッジを付与致します。
ベスト32まで勝ち残った方にはデスマコロシアム 強豪バッジを付与致します。
トーナメントに参加された方にはデスマコロシアム ファイターバッジを付与致します。

歴代チャンピオン

※敬称略

回次 優勝者 準優勝者
1 電脳妖精 yoshi-taka
2 knightrogen electrolysis
3 masaakif1974 mbsp
4 naoki_kp ciel
5 knightrogen tadaedo
6 べーにー あしぇる
7 gogoweb_ikeda べーにー
8 ciel gmk

4.参加者解答例

問題内容

標準出力に

BAAAAAAAAAAAAAAAAAAAAAAAA
ACAAAAAAAAAAAAAAAAAAAAAAA
AADAAAAAAAAAAAAAAAAAAAAAA
AAAEAAAAAAAAAAAAAAAAAAAAA
AAAAFAAAAAAAAAAAAAAAAAAAA
AAAAAGAAAAAAAAAAAAAAAAAAA
AAAAAAHAAAAAAAAAAAAAAAAAA
AAAAAAAIAAAAAAAAAAAAAAAAA
AAAAAAAAJAAAAAAAAAAAAAAAA
AAAAAAAAAKAAAAAAAAAAAAAAA
AAAAAAAAAALAAAAAAAAAAAAAA
AAAAAAAAAAAMAAAAAAAAAAAAA
AAAAAAAAAAAANAAAAAAAAAAAA
AAAAAAAAAAAAAOAAAAAAAAAAA
AAAAAAAAAAAAAAPAAAAAAAAAA
AAAAAAAAAAAAAAAQAAAAAAAAA
AAAAAAAAAAAAAAAARAAAAAAAA
AAAAAAAAAAAAAAAAASAAAAAAA
AAAAAAAAAAAAAAAAAATAAAAAA
AAAAAAAAAAAAAAAAAAAUAAAAA
AAAAAAAAAAAAAAAAAAAAVAAAA
AAAAAAAAAAAAAAAAAAAAAWAAA
AAAAAAAAAAAAAAAAAAAAAAXAA
AAAAAAAAAAAAAAAAAAAAAAAYA
AAAAAAAAAAAAAAAAAAAAAAAAZ

を出力してください。

出題者よりポイント

2つの視点で、解答例とともに解き方を紹介します。

解答例 (その1):(Ruby 46文字)

改行を無視すると、B-Z の文字の間に 25文字の A 、という構成の文字列になっていることに着目します。
該当パターンの文字列を作成した後に、25文字区切りで改行しながら標準出力を行います。

puts ('B'..'Z').to_a.join(?A*25).scan(/.{25}/)

解答例 (その2):(Ruby 67文字)

文字列を行列とみなし、対角だけ文字コードが1つずつ増えていく点に着目します。

Ruby の Matrix.diagonal を使って、行列の対角要素を 1-25 に設定し、
それ以外の要素を 0 に初期化します。
そして、
・0 の部分は A = ASCII コード 65
・対角要素は B ( 66 )からスタートしてひとつずつインクリメント
するようにします。

require 'matrix' # デスマコロシアムの細則により、この require は文字数にカウントされない
$><<Matrix.diagonal(*1..25).map{|e|(e+65).chr}.to_a.map(&:join)*?\n

tails様, えちごやえちぜん様, suppy193様:Octave 文字数(24)

<出題者コメント>
全言語中の最小解答でした。 (名前の順が解答順)

diag で行列の対角要素を扱っています。

<最小達成者解答>

  • tails様 解答
disp([65+diag(1:25),""])

naoki_kp様 :Perl 文字数(33)

<出題者コメント>
Perl 最小でした。

<最小達成者解答>

  • naoki_kp様
use v5.10; # デスマコロシアムの細則により、この use は文字数にカウントされない
say"A"x$a,$_,A x(24-$a++)for B..Z

todaemon様 :Ruby 文字数(38)

<出題者コメント>
Ruby 最小でした。

<最小達成者解答>

  • todaemon様
puts ([*?B..?Z]*(?A*25)).scan(/.{25}/)
  • 出題者補足
    todaemon 様の解答を少しだけ組み替えると
puts [*?B..?Z].*(?A*25).scan /.{25}/

38 文字から 36 文字になりました。

ciel様, ym_base様:Perl 6 文字数(39)

<出題者コメント>
Perl 6 最小でした。 (名前の順が解答順)

<最小達成者解答>

  • ciel様
say 'A'x$_~chr(66+$_)~'A'x(24-$_)for^25

gmk様:R 文字数(39)

<出題者コメント>
R最小でした。

<最小達成者解答>

  • gmk様
cat(intToUtf8(rbind(diag(1:25)+65,10)))

ちょっとした話

今回のデスマコロシアムは 21 日間だったのですが、
なんと 21 回 回答してくださった方がいます。

suppy193様 です。

最終的に Octave で最小賞まで取得しています。

5.さいごに

「第8回デスマコロシアム」問題へ多数の参加ありがとうございました。

「第9回デスマコロシアム」問題は

  • 第8回と同様に言語ペナルティと文字数ペナルティのルール
  • 新年1発目のデスマコロシアムということで○○○○○○な問題です

となっています。

こだわりの言語を選んで、言語内最短を目指すのもよし、
特に最短にはこだわらず好きな言語で正解だけを目指すもよし。

いつものようにただ単に標準出力するだけのプログラムでの参加も可能です。
気軽にご参加ください。

解答コードの公開は歓迎致します。
共有しやすいようにハッシュタグを利用してTweetされることを推奨します
特に当記事の解答例にない言語については皆様興味があると思いますので
積極的に公開してください。

また、公開された解答は「第8回デスマコロシアムまとめ」に追加していきます。

Tweet例

言語:XXX url #デスマコロシアム

CodeIQ運営事務局より

第9回デスマコロシアムは、こちらです。ぜひチャレンジしてみてください!

  • 問題挑戦はこちらから
  • 挑戦受付締切:2015年1月30日 PM8:00
  • 20
  • このエントリーをはてなブックマークに追加

■この記事を書いた人

avatar

tbpgr

CodeIQでRubyや様々なカテゴリの問題を出題中。 Twitter:@tbpgr Tbpgr Personal Page: http://tbpgr.github.io/

■関連記事

ついに最終回。「第12回デスマコロシアム」問題のトーナメント結果発表です!~優勝者は...!... 1.はじめに 「第12回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 ...
「第11回デスマコロシアム」問題のトーナメント結果発表です!~優勝者は…!... 1.はじめに 「第11回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 ...
「第10回デスマコロシアム」問題のトーナメント結果発表です!~優勝者は…!... 1.はじめに 「第10回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 ...
「第9回デスマコロシアム」問題のトーナメント結果発表です!─優勝者は…!... 1.はじめに 「第9回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 ...
「第7回デスマコロシアム」問題のトーナメント結果発表です!──優勝者は…! #デスマコロシアム... 1.はじめに 「第7回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 ...
「第6回デスマコロシアム」問題のトーナメント結果発表です!──優勝者は…! #デスマコロシアム... 1.はじめに 「第6回デスマコロシアム」へようこそ! この記事は トーナメントの参加集計 トーナメントの結果発表 参加された皆様の解答例 の3本立てでお送りします。 2.トーナメントの参加集計 エントリー結果 挑戦者数 正解者数 不正解者数 8...

今週のPickUPレポート

新着記事

週間ランキング

CodeIQとは

CodeIQ(コードアイキュー)とは、自分の実力を知りたいITエンジニア向けの、実務スキル評価サービスです。

CodeIQご利用にあたって
関連サイト
codeiq

リクルートグループサイトへ