アンケートについて

これからもみなさまが快適にアルゴリズムの勉強できるようにシステムの改善を続けていきます。
皆様で作っていくサイトだと思いますので、是非、ご意見・ご感想をください。
アンケートフォームはこちら

結果について

  • WJ(Wait for Judge)はジャッジ待ち中です。しばらくして更新してみてください。
  • Judge(Judging)はジャッジ中です。実際にはテストケース数とジャッジ進捗が表示されます。しばらくして更新してみてください。
  • AC(Accepted)が出れば、 正解です。(注意:ただし、ミスがあれば後日指摘される可能性があリます。)
  • WA(Wrong Answer)は回答が間違ってます。
  • TLE(Time Limit Exceeded)は、実行時間オーバーです。もっと時間効率のよいアルゴリズムを考えてみましょう。
  • MLE(Memory Limit Exceeded)は、使用メモリ制限です。もっとメモリ効率のよいアルゴリズムを考えてみましょう。
  • OLE(Output Limit Exceeded)は、ファイル制限です。20MB以上出力すると表示されます。出力数を減らしてください。
  • RE(Runtime Error)は、実行時エラーです。
  • CE(Compile Error)は、コンパイルエラーです。
  • IE(Internal Error)は、申し訳ありません。ジャッジシステムのエラーです。(運営者に自動的に連絡が行きます)

初めてやってみたけど、REになる。

つまづきやすいのですが、実行引数ではなく、「標準入力」で入力が渡され、「標準出力」で答えを出力します。
知らなかった方はこれを機に覚えましょう。
基本的に、競技プログラミングサイトではこの形式が多いです。

ランタイムエラーメッセージが見たい

セキュリティ上よろしくないものもメッセージとして出せちゃうので、出さないようにしてます。

テストケースのダウンロードもできるので、お手元の環境で実行してみてください。

どうしてもわからない(環境依存)という場合は、ご連絡頂ければ、ユーザーのTwitterなどにご連絡します。

問題がどうしても合わない/なにかおかしい

まず、@yukicoderへ質問・ご連絡ください。強い方のご意見も聞いて、お答えします。

万が一、問題の不備の可能性もあります。あまり考えても時間がもったいないのでどんどんご連絡ください。

実行時間制限と言われても・・

約10^9 (10億)回のループで1秒の実行時間と考えてもらえればよいです。
★,★★の問題は、ループ回数をちゃんと見積もれなくても、早そうな処理を考えると正解できるかと思います。

厳密ではありませんが、1GHzのCPUで1秒間に処理できるのが10^9 (10億)回の演算と考えることが出来ます。
言語差がありますので、言語によって同じ処理でも実行時間が変わります。

-- の表記は?

その問題の 実行制限時間+1秒以上かかったケースがある場合、それ以上の実行はしません。(ノックアウト方式)
これはTLEになる可能性が高い場合ジャッジを専有してしまうので、リソースの節約と結果を素早く返すためのものです。
実行制限時間+1秒未満の場合はTLEと表示はされますが、続けて実行されます。

レベル・タグについて

運営者・出題者の見解でレベル・タグを付けております。 目安は以下ですが、あくまで参考程度です。
レベルは「問題の難易度+アルゴリズムの難しさ」の総合です。
アルゴリズム自体を知らなかった人が、(★1段階少ない問題なら解ける人が)一から勉強するくらいの難しさです。

運営者の主観的な目安 (☆は0.5を表します)
★     始めての方向け、言語の基礎を知ってれば解けるかも、初心者にもおすすめの問題
★☆   実装自体は基礎があればできるが、初心者でも少々考察ができれば解けそうな問題、1e9+7を使う問題(割り算以外)/小数誤差がありうる問題/32ビット整数型では解けない問題/リアクティブ
★★    基本的なアルゴリズム(全探索/ユークリッド互除法/DFS/BFS/エラトステネス/素因数分解/しゃくとり法/基本的なDP/包除原理)
★★☆  基本的なアルゴリズムに加え、考察難度が高い問題 / 周期性 / NextPermutation /やさしめなアドホック /多倍長/逆関数)
★★★   競プロ向けの/応用的なアルゴリズムの問題(DP/ダイクストラ法/ワーシャルフロイド/トポロジカルソート/Nim/優先度付きキュー / 逆元を用いたコンビネーション計算等)
★★★☆  桁DP / ★★★に加え一般には知られてないが、実験等で発見することが可能と思われる問題/埋め込み解やLL系言語では時間が困難なもの
★★★★  行列べき乗や ★★★レベルのアルゴリズムの組み合わせや考察が必要な問題/事前にライブラリを用意しないと本番中に書くのは難しいもの。
★★★★☆  挿入DPやPolyaの定理など (とりあえず用意しましたが要検討)
★★★★★ 高度な数学的な知識(FFTなど)/高度なグラフの知識などを要する問題
★★★★★☆  (とりあえず用意しましたが要検討)
★★★★★★ ???????

タグは、その問題を解くために使用するアルゴリズムです。すべての要素についてANDではなく、そういう要素もあるよね程度です。

ユーザーLv. について

解いた★数/全問の★数の%です。Lv.を一定以上上げるとWikiの編集権が付加されます。
(しばらく解いてないと下がることもあリます。)

スコアについて

各問題、 50×★の数+50×★の数 / (0.8+ 0.2×ACの順位)とその合計となっております。

ゆるふわポイントについて

スコアには現れないけど、解説をして頂いたり、ミスのご指摘、面白いコードなどに差し上げるポイントです。

ポイントを貯めるといいことが?

  • 問題ごとのショートコード 40pt
  • 誤字脱字指摘 5pt〜
  • サンプルケースミス指摘 20pt
  • ブログやページでの解説(自己解説も含む) 30pt
  • 他の人へのチャレンジ 40pt
  • テストケースミス指摘 50pt〜
  • コードがFavされた 20pt
  • 問題がFavされた 10pt
など適宜付与します。(各ポイントはとりあえず暫定的です)

スマートサブミットについて

ユーザーページからチェックを入れることができます。
チェックを入れると、提出画面からCtrl (MacではCommand) +v を押すだけで問題ページから提出することができます。

ショートカットキーについて

ユーザーページからチェックを入れることができます。
問題ページ画面で

  • j」で前の問題
  • k」で次の問題
  • e」で編集画面
提出表示画面で
  • j」で同じ問題の前の提出
  • k」で同じ問題の次の提出
  • u」で同じ問題の前のACの提出
  • i」で同じ問題の次のACの提出
へジャンプすることができます。
また、チェック入れなくても有効な機能として保存する系の画面で「Ctrl(Command)+s」で保存ができます。

同じコードを提出してるのに実行時間が微妙に違う

基本的には、誤差だと思います。初心者が作ったジャッジなので、ご了承ください。 ゆるふわに練習するという目的なのでジャッジの実行時間の精度はあまり高くなくてもいいと思っております。

なるべく精度を高めるようにしておりますが、精度を求める方はAtCoder等で練習されるかといいと思います。

もし10%以上違うという場合は、ご連絡ください。(サーバーの増築などを考えます)

Java/Scalaの提出について

Javaについては、コンパイル可能で、エントリーポイント(mainメソッド)があり、半角文字であればクラス名は任意です。publicの有無は問いません。
さらにpackageがついててもOKです。 (ジャッジが通らなかったら教えて下さい。。)
エントリーポイントが複数ある場合の挙動は不定です。

Scalaのクラス名もJavaと同様に、コンパイル可能でエントリーポイントがあれば、半角文字であればクラス名は任意です。publicの有無は問いません。
さらにpackageがついててもOKです。 #4296のようなpackageの入れ子もできます。

ソースコードのサイズについて

最大64KiB(64*1024バイト)に制限しています。この制限の中で創意工夫してください。

出力制限のサイズについて

最大20MiBに制限しています(実際には若干少ないです)。これを超えるとOLEの判定が出ます。
ただし、標準エラー出力なども含みます。

プログラムのネットワークアクセスについて

提出されたプログラムのネットワークアクセスはできないようになっております。ご了承ください。

補助ツール

Online Judge Helper(nodchipさん作)
https://github.com/nodchip/OnlineJudgeHelper

サンプルケース自動テスター(なおさん作)
http://ideone.com/OlIkW4(Perl)

yukicoder勢とは

yukicoderをしたことがある人は名乗る権利があります。

匿名ログインの権限増やしてください!

通常のログインしてください!!

Scalaについて(2017/04/16追記)

原因は不明なのですが、Scalaが、サイトの仕組み上耐えない遅さになってしまったので、しばらく提出をできないようにします。ご了承ください。
今後改善の見込みがあれば、復活する予定です。
なお、Elixirも近い現象なので、様子を見て実施する可能性があリます。

何かあれば書きたい