質問するログイン新規登録

Q&A

解決済

2回答

360閲覧

競技プログラミングでC問題が解けない。

sakamod36

総合スコア3

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

競技プログラミング

競技プログラミングは、AtCoderやCodeforces、LeetCodeなど、アルゴリズムの実装、学習法などに関する投稿に使われます。

AtCoder

AtCoderは、日本の競技プログラミングサイト「AtCoder」に関する内容です。

0グッド

1クリップ

投稿2026/03/28 13:42

0

1

私はプログラミング仲間に誘われてAtcoderで競技プログラミングを始めてこれまでで計30回以上参加してきたのですが一度もC問題が溶けません。ネットの記事だとみんなプログラミング未経験でも10回とか15回めとかで溶けたみたいな声があるのですが信じられません。ただAB問題の回答速度が上がるだけで一向にCが解けないのです。解説を読んだり、アルゴリズムを見たり、よく出てくるbfs dfsを重点的に学んだり、オーダーを学んだり、過去問を解いてみたりといった書籍を買う以外のことをだいたいやってきたのですが一向に溶けません。というか本番になると一切思いつきませんし、アルゴリズムを学んでしまったからこそそれに引っ張られて全然解けないみたいな感じにもなってしまいます。正直心が折れそうです。書籍を買うしかないのでしょうか?なにかC問題を解くためのアドバイスがあったら教えてください。

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

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

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

meg_

2026/03/29 06:58

> 解説を読んだり > というか本番になると一切思いつきません 「解説」を読んで理解はできているということですか? 単純に本番に弱いという事でしょうか?時間制限があるとダメとか?
sakamod36

2026/03/29 07:21

単純に本番になると何も思いつかないor思いついてもそれが正解ではなかったり、全く関係ないアルゴリズムを選んだりそのそもアルゴリズムを使わないで良かったりなど、すべての的を外しているうちに時間だけが過ぎていく感じです。参加初期は単純に解法に近かったのですが勉強すればするほど誘惑が増えて逆にわからなくなっています。
sakamod36

2026/03/29 07:27

今のところ1,問題を見る→2,制約を見る→3,ボトルネックを探す。→4,制約に収まる範囲のアルゴリズムを探す→5,実際に組み込む。みたいな思考回路でやっているのですが、主に4で条件を満たすアルゴリズムが思いつかなったり、そのそもアルゴリズムが違ったり不要だったり。するかんじです。
maisumakun

2026/03/29 11:43

競技プログラミングは、純粋に趣味としてやっている感じでしょうか?それとも、競技プログラミングを通じて、実用的に伸ばしたい能力がある、と考えていますでしょうか?
sakamod36

2026/03/29 11:57

数学的知見が欲しいのと、プログラミングの能力を伸ばすor維持したいと思ってやっています。これまで使ってこなかった生成AIを参考にしたりするようになって、プログラミング能力の落ちを感じていたので、解決法として元々興味を持っていました。友達に誘われたしいい機会だと思って始めた感じです。
Lhankor_Mhy

2026/03/31 03:04

ここで言うC問題とは、ABCのC問題ということでいいですよね。 「解けない」というのは、時間内に解けないということでいいですか。その場合、時間をかければ解けますか? また、Atcoder ではアルゴリズムを検索したり書籍を横に置いたりすることは禁止されていないですが、ググってもどのアルゴリズムを使えばいいのかわからない、ということでいいですか?
meg_

2026/03/31 03:55

> 過去問を解いてみたり 過去問は解けるのに本番になると「何も思いつかないor思いついてもそれが正解ではなかった」というのはメンタルが関係している気もします。過去問が解けるならアルゴリズムは身についていると考えられます。
guest

回答2

0

なにかC問題を解くためのアドバイス

本番になると一切思いつきませんし、アルゴリズムを学んでしまったからこそそれに引っ張られて全然解けないみたいな感じにもなってしまいます。

質問を見ると、まず知識量・知識範囲・訓練が足りていないと思うので、鍛錬を積みましょう。

プログラミング未経験でも10回とか15回めとかで溶けたみたいな声があるのですが信じられません。

他人と自分を比べることにあまり意味はありません。解く速度が早くなっているなど向上は見られるようなので、気にすることはありません。

書籍を買う以外のことをだいたいやってきた

なぜ、書籍にあたらないのでしょうか?

書籍を買うしかないのでしょうか?

本を読んだりやってみたりしたらすぐに効果があるかどうかはわかりませんよ。
ただ、Web上の情報にくらべると、複数の人の目でチェックされて出版されるものなので間違えも少ないし、また、一冊のまとまりとして成り立つように作られているので体系建てて知識を得ることができという大きな利点があります。
なので、競技プログラミングの書籍にあたったことが無いのであれば、まずは一冊やってみてはどうでしょう。あれこれ買ってやってみるのがお勧めですが。


コメントでも少し触れられていますが、競技プログラミングというのはちょっとプログラミングの中でも特殊な分野で、一般的なプログラミング技術に直接良い影響を与えるものではないと思っています。なので、趣味でやるのではなく、仕事をする上でのスキルの向上が目的なのだとしたら、あまりこだわらないほうがいいんじゃないかと思っています。

投稿2026/03/29 13:40

TakaiY

総合スコア14684

0

ベストアンサー

アドバイスとなると、勉強あるのみだと思います。
私は正直胸を張ってC問題を解けると言えるレベルかどうかと言われれれば怪しいですし、文系高卒なので数学の基礎もほぼできていません。

そんな中で、

だとみんなプログラミング未経験でも10回とか15回めとかで溶けたみたいな声があるのですが信じられません。

については、意見があります。
そもそもアルゴリズムはプログラミングが関係なくて、アルゴリズムの父と呼ばれるようなダイクストラという人物ですら、プログラミングじゃなくて紙に書いてから解けと言ったレベルです

そしてアルゴリズムの解き方は簡単なレベルで言うと高校数学までの範囲であって、私みたいな人間にはほぼ歯がたちませんし、
アルゴリズムのほとんどを占める「グラフ理論」は大学数学の数学科が取り組むようなレベルの問題です。

京都大学の理系の友達がいますけど、普通にDPの問題を与えても数学的にも解けなくて普通です。(プログラミング未経験者)

だから、10回,15回で解けないのは母数で言ったら当たり前だと思います。
(その友達だったら解けるようになると思いますけど)

逆に、解ける人は数学科の才能がある人達ってことです。

それでも「悔しい」って気持ちがあるなら解けるようになるだろうし解けなくていいわ!ってなったらもう無理でしょう

頑張れ!

投稿2026/03/31 05:27

u2025

総合スコア230

u2025

2026/03/31 05:31

例えばDPの勉強しても、本番でDPのアルゴリズム(と言っても沢山あるけど基礎的なもの)の逆順が必要ってだけでも、不等式を反対にするだけなのに解けなかったりします。 そういうのが普通です。 この質問をしたということはそういう近い方法が思いついているからこそこの質問をされているのだと思いますし、成長してるってことですよ。 アルゴリズムの基本、ステップバイステップで思いつく限りの全パターンを実装してみればいいんですよ。 頑張れ
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.29%

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

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

質問する

関連した質問