Codeforces 909 問題A〜Fの解説
Codeforces 909 問題解説
問題URL
A B C D E F
難易度:赤 黄 緑 青 緑 紫
解説
A
問題概要:2つの文字列が与えられる。非空の接頭辞を連結した文字列の中で辞書順最小のものを求める。
アルゴリズムラベル:貪欲
解法分析:
辞書順比較は左から順に文字を比較し、どちらかが終了するか異なる文字が見つかるまで続ける。このため、貪欲法が有効。前後の文字列の接頭辞を比 ...
6月26日 19:39 投稿
C言語プログラミング問題集:二次元配列と進数変換の実装
1. プログラム補完問題
以下のコードでは、関数matrixFillerがN×Nの行列を構築する機能を持っています。行列要素の配置ルールは次の通りです:最も外側の要素はすべて値1を持つ、内側に進むにつれて第2層は値2、第3層は値3、以下同様に増加します。例えば、N=5の場合、生成される行列は:
1 1 1 1 1
1 2 2 2 1
1 2 3 2 1
1 2 2 2 1
1 1 1 1 1
プログラム内のアンダーライン ...
5月19日 07:39 投稿
Codeforces Round 984 (Div. 3) 問題の解説
C. Anya and 1100
問題URL
Problem - C - Codeforces
解法
文字列中の特定のパターン「1100」の出現回数を管理する問題です。ある位置の文字を変更したとき、それが「1100」の存在にどのような影響を与えるかを考えます。
変更による影響は三種類あります:
「1100」の個数が1増える
「1100」の個数が1減る
変化なし
変更箇所について、それが「1100」のどの位置(1 ...
5月17日 11:24 投稿
トライ木による文字列検索と最大 XOR ペアの解法
トライ木の基本構造と実装
トライ木(Trie)は、文字列や数値の検索・格納に特化した木構造データ構造です。各ノードが複数の子ノードを持ち、文字やビットによってパスを分岐させることで効率的な検索を実現します。
まずは、英文字からなる文字列を扱う基本的なトライ木の実装を見てみましょう。
#include <bits/stdc++.h>
using namespace std;
const int MAX ...
5月15日 04:36 投稿