C++ 初級基礎:標準ライブラリ活用法

C++ の基本的な標準ライブラリ機能について、実践的な観点から整理します。 1. 入出力と基本設定 #include <bits/stdc++.h> using namespace std; // 入出力同期の非同期化(入出力PEED向上) ios::sync_with_stdio(false); cin.tie(nullptr); C++ のストリーム(cin/cout)と C 言語の関数(scanf/printf)は混在を避けることが推奨されます。混在すると入出力 ...

6月3日 17:42 投稿

競技プログラミング問題集:基本アルゴリズムの実践

最短区間カバー問題 指定された種類数を満たす最小連続区間を探索する問題です。スライディングウィンドウ手法を用い、要素の出現頻度を動的に管理しながら最適解を導出します。 #include <bits/stdc++.h> using namespace std; int main() { int n, m; cin >> n >> m; vector<int> cookTypes(n); for (int i = 0; i < n; ++i ...

5月31日 19:21 投稿

配列と連結リストの基本アルゴリズムと実装例

配列の二分探索 昇順に整列された重複のない配列から要素を検索する際、二分探索は効率的な手法です。左閉右閉区間と左閉右開区間の2つのアプローチを解説します。 左閉右閉区間アプローチ class Solution { public: int binarySearch(const vector<int>& arr, int target) { int low = 0; int high = arr.size() - 1; while (low tar ...

5月28日 21:40 投稿

Codeforces Round 859 Div.4 のアルゴリズム解法と実装解説

問題 A: Plus or Minus 問題概要 3つの整数 a, b, c が与えられます。演算子として + または - のいずれかを用いて a と b を結合した結果が c と一致する場合、該当する演算子を出力してください。必ずいずれか一方のみが成立することが保証されています。 解法のアプローチ 単純な条件分岐で対応可能です。和 a + b が c と等しければ + を、等号が成立しなければ必然的 ...

5月13日 22:32 投稿