2023年7月22日
どうもこんばんは。
なんか色々思うところを書こうと思ったんだけど、私の気持ちを伝えるのも変だと思ったので、できるだけ感情を抜いて事実だけを書いている。
前提
- 色変記事の嬉しい話とかではなく、競技性の話。
- ChatGPTの影響を伝えたかった為書きました。
- 私の本来の実力は恐らくレーティング500~600くらい。
- コードインタプリタとかは使わず、普通のChatGPT-4を使っています。
- AtCoderではChatGPT等のAIの利用が禁止されていませんが、推奨もされていません。
ABC311で緑色になりました
今年3月から少しの間はChatGPTを使用しない純粋な競プロをUnratedで楽しみ、5月中旬から就活もありレートを上げる為の競プロをやっている。
結果、今日ABC311でABCDE—の5完ノーペナ51分でレートは+159。無事緑へ。
レートを上げる為のChatGPT
ABC311での解き方
今回の場合、ABは自力で解いて、CDEはChatGPT-4と話しながら解いた。
Cは問題貼り付けのみ、D、Eは会話しながら指示ありで解いた。
ChatGPTに出力されたコードは
付属のテストケース→自分で吟味→自分でバグりそうなテストケース作成し検証→提出
みたいな感じで解いてる。
ある意味そういう競技になってる。
AtCoder With ChatGPTみたいな。
問題の解き方の流れ
- 問題を見る
- 難しそうor実装がめんどくさそうならChatGPTを使うことを選択、問題文コピー
- メモ帳にペーストし、文字を整える
- ChatGPT-4に整えた問題文を投げる(解法が分かる場合はここで同時に解法も投げる)
- 出力されたコードの検証
- 提出
コツ
最大でも会話は3往復ぐらいにしている。3往復ぐらいになってダメなら新しいChatを開始するか、途中まで戻って分岐させている。これは、過去ログを認識する数の制限があるから。
認識する数は結構変動するっぽくて、最近は3つなんじゃないかとか言われてるのをどっかで見たから3回。
もし、制御したければChatGPTのAPIを使うと制御できるはず。
実際にこのコツが効いてるかはわからん。
これ以外には特に工夫はしていない。
だから、誰でもできる。
AIの反逆に備えて感謝は伝えてる。
実際にChatGPTを3か月使った推移
ChatGPT使用中の平均パフォーマンスはだいたい968。
ChatGPTを使わない時の私の平均パフォーマンスは500~600なので、+300~400くらいは盛れてる。
最近はChatGPT対策でかなり文章が複雑だったり、図を使ってくる問題も増えているが、それでも正直盛れる。
恐らく、今のChatGPTの使用状況だと、言語の基本文法がわかれば誰でも茶色になれる。
今のAtCoderは、茶色までであれば自分の本来の色+1くらいのバフをかけることが出来る。
なんもしなくても灰色は茶色に、茶色は緑色になれるということ。
ChatGPTを使っている人の見分け方
ぱっと思いつくものを。
- コメントがついている
以下は実際に私が提出したコード
いやいや、こんな変なコメント普通つけないよ、 どう考えても。
他にも、英語コメントバージョンもある
流石にLet’s define the binary operation firstはおもろい。 - 普段と置いている変数が違う
私は基本的に小文字で変数を置く。例えば、
n=int(input())
とか。
だから、
N=int(input())
と書いてある私の提出コードは大体ChatGPT産だよ。 - 普段と解き方が違う
例えば以下みたいな感じで、関数定義して__name__ == “__main__”で解くやつとか。
未だに競プロでこの__main__をやる有用性がわからないので、私は絶対やらない。
この見分け方を見ていただけるとわかるんだけど、全部対策できちゃう。
コメントは消せばいいし、変数名も変えればいい。
__main__も関数を取り除いてやれば問題ない。
しかも、ChatGPTは出力が固定じゃない。だから、判別が結構難しい。
つまり、ChatGPT禁止にしても取り締まりがかなり難しい。
それでも、公式が「ChatGPTやGitHubCopilotの使用を禁止します」と言う意味は私はあると思う。
少なくとも私は使わなくなる。
ChatGPTを使うメリット
- レートが上げられる
本当の実力が茶色くらいの人までなら色+1くらいならできる。
みんなが積極的に使い始めたら話は別。
ChatGPTを使うデメリット
- 面白くない
- お金がかかる
一応、ChatGPT-4もGPT-3も競プロ系の性能はほぼ変わらないと言われているけど、ChatGPT-4を使おうとすると月3000円くらいかかる。 - 競技性の崩壊
正直私は、緑色までのレート価値がだいぶ薄れている。
今回のABC311も、716位。Ratedで見ると478位。
私の実力なんて良くて2500位くらい。
茶から緑になるまでにやったこと
- ChatGPT+に加入する
おわりに
上位層の方からするとあまりChatGPTの影響は無いかもだけど、茶色以下くらいにはかなり影響があると考えている。
とにかく、ChatGPTを使用したAtCoderは面白くない。でも、レートを上げることを第一目標にするとChatGPTを使うのがベスト。
ただ、そんなお話だけど、あまり周知されていない気がして。