質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

Q&A

解決済

1回答

1438閲覧

競技プログラミングに関する質問はどこまでOKなのか?

esklia

総合スコア81

コードレビュー

コードレビューは、ソフトウェア開発の一工程で、 ソースコードの検査を行い、開発工程で見過ごされた誤りを検出する事で、 ソフトウェア品質を高めるためのものです。

3グッド

2クリップ

投稿2020/04/14 14:49

編集2020/04/14 15:46

競技プログラミングに関して解法の質問をさせていただくことがあるのですが、
どこまでがOKでどこからが許されないのかが良くわかっておりません。コンテスト中の問題に関する質問はもちろん許されないと思いますが、線引きはどのようになっているのでしょうか。何がだめで何がセーフなのかご意見を頂戴できればと思います。

  1. コンテスト中の問題の解法についての質問

  2. AOJ-問題セット→Introduction to programmingについての質問

  3. AOJ-問題セット→Vol 0-4等→All Japan high school programming contestの既に公開済みの問題についての質問(すでに終了済みのコンテストですし、一応他の人の回答も公開されているのですが、「contest」と銘打ってあるので気になります)

  4. AOJ-問題セット→Vol 11等→ACM-ICPC Japan Domestic contestの既に公開済みの問題についての質問(すでに終了済みのコンテスト?ですし、一応他の人の回答も公開されているのですが、「contest」と銘打ってあるので気になります)

5.問題文の詳細な情報をここに書き込んで質問するという行為(競プロサイトとしては迷惑なのでしょうか?しかし問題文などを載せないと回答者様との意思疎通も取りづらいですし…)
6.公開済みの他の人のコードを借用する行為(コピペはダメですが、コードの書き方を他の方から学ぶこともあるので、、、)

お手数おかけしますがご回答よろしくお願いいたします。また、可能であればatcoderやleetcode等で学習する際のタブーについてもご教授いただきたいです。知らないうちに禁止行為などに該当しても困ってしまうので…

miyabi_pudding, teamikl, LouiS0616👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Zuishin

2020/04/14 15:09

とりあえず絶対ダメなのは、取得先を書かずコードを載せることです。これは競技プログラミングに限らずダメです。Qiita だろうが GitHub だろうが無料だろうがなんだろうが取得先は書いてください。
esklia

2020/04/14 15:24 編集

そちらの方は読ませていただき、AOJさん側に勉強の目的であれば許容してくださる姿勢のようなものも感じられるのですが、やはり問い合わせたほうが賢明でしょうか。 「取得先」とは他ユーザの書いたコードを含めていますか。例えば、他ユーザ様の書いたコードについて理解したいことがあったとして、取得先を載せることは必須ですが、同時に他ユーザの方へのリンクや名前を出すことはプライバシー上好ましくないような気もしますが…
Zuishin

2020/04/14 15:28

問い合わせるのが確実ですが、私は許容されるものだと思っています。 取得先に関してですが、作ったユーザーの名前を隠す方が良くないものですし、公開されているものであれば隠す意味はありません。盗む、あるいはこっそり拝借するのではなく、誰が作ってどのように公開されているかをきちんと書きましょう。公開されてはいけないものなら作者が非公開にするはずです。
esklia

2020/04/14 15:35

基本的に問題に関して言えば規約に従う限りで許容されそうみたいですね。 ユーザ名に関しては、公開されているのだから質問文に明記してもよいのかもしれません。おっしゃる通り公開されているのだから明記すべきと考える方が道理なのかもしれません。ただ本人にそれを通知する方法がないこと(≒無断で引用されるのを好まない可能性)と、公開はしているけれど質問サイトなどで自分のことに言及されたくない方もいるように思えますが、どうお考えでしょうか。少し難しく考えすぎですか。
Zuishin

2020/04/14 15:45

言及されたくない人は公開してはいけません。インターネットとはそういうものです。公開に同意しているので大丈夫です。どうしても気になるならそのプログラムに関する質問自体を遠慮してください。
esklia

2020/04/14 15:51 編集

夜遅くお付き合いいただきありがとうございます。インターネットとはそういうものというご回答で腑に落ちました。他の人のコードに関してそうさせていただくことにします。ご教授ありがとうございました。
guest

回答1

0

ベストアンサー

かなり個人的な意見が盛り込まれてしまいますので、ご了承下さい。

  • まず第一はコンテストサイトの利用規約に違反していないことでしょう。

いかに、問題を解く上での解法とならなくても、利用規約に違反してればそれはダメということになります。

  • 出題において、根幹(回答者が解くべき部分)と思しき部分の解法に関する質問はすべきでないと思います。

なぜなら、回答者が解くべき部分であり、コンテストの意味をなさなくなるからです。

  • 上記に付随して、結果を得るための手段についての質問(特に解法に直通の部分)はすべきではないと思います。

例えば、配列変数の処理方法とか。
なぜなら、調べればわかることであり、その方法を調査する事も含めて出題であると個人的には思うからです。

  • 構文が間違っていないのにも関わらず、(か、自分で見つけ出すのが困難)不正解と出てしまう、場合は、ありだと思います。

なぜなら、どんなに卓越してても、自分では間違いを見つけきれないパターンはどうしてもあるからです。

  • 上記に付随して、万一、明らかに、コードレビューシステム側の不具合と思しき場合、その確証を得るために、質問、もありと思います。

これこそ、自分一人では、自信持ちきるの難しい場合ありますからね。

以上、かなりフワッとしてて、独断と偏見ではありますが、参考になれば幸いです。

投稿2020/04/14 15:14

編集2020/04/14 15:50
miyabi_takatsuk

総合スコア9528

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

esklia

2020/04/14 15:29

ご回答くださりありがとうございます。 ご回答を「可能な限り倫理を遵守して、どうしても分からなければ問題の核心にかかわる部分以外で質問しろ」という風に解釈いたしました。なかなかグレーな部分もあり難しいですね…
miyabi_takatsuk

2020/04/14 15:35

だいたい、その解釈の通りのつもりでした。 グレーで難しくはあると思います。 ただ、通常質問と同じで、調べて調べて、それでもどうしてもわからない部分をピンポイントに!となれば、自ずと質問してもよさそうな部分になるんじゃないかなー?とも思います。
esklia

2020/04/14 15:48 編集

やはり調べても分からずどうしても、、というときは大丈夫そうということですね。ありがとうございます。ちなみに質問文本文の3と4についてはOKかどうか教えていただきたいのですが、終了済みのコンテストなのでOKでしょうか?
miyabi_takatsuk

2020/04/14 15:54 編集

利用規約に違反しない限りはOKだと思いますよ。 それでも、Zuishinさんのおっしゃる通り、出典元の提示はすべきだと思いますけどね。 その際は、終了済みの問題であることも明記すると誤解を防ぐことができるかと。
esklia

2020/04/14 15:58 編集

問題のリンクは毎回提示しております。また、「最初はどうしても分からなくなるまで自分で考える」ことは心がけております。が、参考にさせていただいたコードに関して先のプライバシーに関する懸念もあり明記していなかったのですが、次回からは名前を明記するようにいたします。 > その際は、終了済みの問題であることも明記すると誤解を防ぐことができるかと。 確かにその方がよさそうですね。教えてくださりありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問