質問: 先日「AtCoder ARC 057 B」というご質問が投稿されました。 * AtCoder ARC 057 B 内容としては AtCoder という競技プログラミングのサイトの特定の問題に関して、自分の方針とソースコードを載せた上で、特定のテストケースにおいて Wrong Answer (WA) になることを説明しています。 このご質問が「質問内容がはっきりしない」という理由でクローズされたのですが、これだけだとそこまで質問意図が分からないものなのでしょうか? 自分としては「こう書いたらエラーになる」とだけ書かれた質問とそう変わらないように感じました。 エラーを解決したい (つまり、AC にしたい) という部分は推測できるので、コメントで「エラー原因を知りたいのか、その原因を克服するためにはどう書けばいいのか知りたいのかどっちですか?」と聞く程度は必要かと思いますが、クローズするほどなのでしょうか? 自分は競技プログラミングの文脈を知っているので、他の方の感じ方は違うかもしれないな、と思い今回メタに投稿してみました。なぜ質問内容がはっきりしないと感じられたのかが分かれば、どのように書けば多くの人に意図が伝わりやすくなるか、別の FAQ 的投稿ができそうだなと思っています。どうぞよろしくお願いいたします <(_ _)> ※ なお、競技プログラミングに関するご質問は以前にも AIZU ONLINE JUDGEの0009で何回やってもTime Limit Exceedと表示されます。 が投稿されています。 * 関連? + How to deal if the user asks for code in online programming competition? -- Stack Overflow Meta + Where to ask competitive programming related problems actually? -- Stack Overflow Meta
回答: 件の投稿に質問文が記されていないのは紛れもない事実であり、質問文が無いのであれば「質問内容がはっきりしない」のも当然の結果ではないでしょうか? また競技プログラミングの文脈において「特定のテストケース」であり、またテストケースが明かされないことが常識だというのは理解できます。しかし、スタックオーバーフローは競技プログラミング関連サイトでなくQ&Aサイトです。Q&Aサイトにおいてこれは「内容がはっきりしないテストケース」でしかなく、「テストケースを明確にしてください」としか答えようがなく、これについても「質問内容がはっきりしない」の一因ではないでしょうか。 誤解されている方がおられるようなので補足を。 もちろん競技プログラミングを敵視するつもりは全くありません。純粋にQ&AサイトにおけるQとして相応しくないという意見です。 「AtCoder ARC 057 B」や「WAがでます」でなぜいけないのか、それはこれを質問として受け入れた場合にQ&Aサイトとしての回答は「ACしている方のコードを使用してください」で済んでしまいます。**他人のコード**はQ&Aサイトの**回答**としては受け入れられても、競技プログラミングの**解答**としては受け入れられないでしょう。 他人のコードを望んでいないのであれば「WAがでます」で済まさず、 * XXというテストケースは問題ないことは確認しているが、引っかかりそうなテストケースを見つけて欲しい * コードブロックのこの辺りは自信があるが、ここは自信がないので見て欲しい 等々、なんであれ質問者が自分で書いたコードについて議論を展開した上で、自分のコードに対する見解を求める必要があると考えます。 それがなされていれば、自然と質問形の文が含まれるでしょうし、タイトルも問題番号などにはならないでしょう。