Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

デスマコロシアムの細則 @tbpgr #codeiq #デスマコロシアム

f:id:tbpg:20150816032304j:plain

概要

CodeIQ で出題しているデスマコロシアムシリーズ問題の細則です

1. 提出コードの動作確認について

  • ideoneで動作確認をします。ideoneで正解文字列を出力できなければ、他環境で正解だとしても不正解とします。
  • 提出したコード全体で動作確認します。ideoneのテンプレートをそのまま利用する場合は、解答コードに含めてください。
  • 標準入力(ideoneのstdin欄)は空で実行します

2. 正解・不正解の判定について

  • 想定される正解文字列以外の余分な文字を含んでいた場合は不正解とします
# answerが正解の場合の不正解の例

# ダブルクォートが出力されている
"answer"
# 余分な改行を含んでいる(SQLのみ途中の改行を許す、という優遇制度は廃止としたします)
ans
wer
# [1]がついている
[1] answer
  • 最後の改行文字は有り・無しどちらでも正解とします
  • ワーニング、エラーが発生しても標準出力の内容が正しければ正解とします
  • null 文字を含む出力でもnull文字以外の部分が正解想定文字列であれば正解とします
    • 出題直後に正解判定用のUserScriptを提供します。そのScriptで正解として判定されるなら正解です。
  • 解答言語が誤っている場合は不正解とします(解答コードはPerlだが、選択言語はBashだった場合など)

3. byte数

byte数はRuby(1.9以降) の String#bytesize メソッドで計測します。

p DATA.read.chomp.bytesize # => 8
__END__
1ほ34\\

4. byte数のカウント対象

  • 提出したコード全体がカウント対象になります

基本的には上記の1点を基準にカウントしますが 過去のルールの差異、という視点で以下の項目を記載しておきます。

  • import, require などを利用する場合もカウント対象になります
  • ideoneがコードのテンプレートを出力してくれる言語についても解答に含めるため、カウント対象となります

5. エントリー時のチーム名が不正な場合

誤っていた部分をG(PG)に変更してエントリーします。 チーム全体が間違っていた場合はGGG。 一部が間違っていた場合は該当部のみをGに変更します。