コーディングテスト演習(一)——Codeforces 784B Santa Claus and Keyboard Check
はじめに
最近、コーディングテストの準備をしており、練習問題をまとめています。 元々はC言語の経験しかありませんでしたが、実際に使用会发现C++の方がテストに向いています。ライブラリ関数も豊富で、より多くの操作をサポートでき、コードを簡潔に記述できます。 例えば、C言語で文字列を定義するにはchar s[1000]が必要ですが、C++ではstring sだけで済みます。
問 ...
5月29日 16:25 投稿
Codeforces ラウンド 970 (Div. 3)
A. サクラコの試験
解法
全探索で解く。
コード
#include <iostream>
using namespace std;
void solve() {
int a, b;
cin >> a >> b;
for (int i = 0; i n;
string s;
cin >> s;
int m = sqrt(n);
if (m * m != n) {
cout a >> b;
long long l = 1, r = 2e9, ans = 0;
while (l
5月22日 19:19 投稿
Codeforces Round 895 (Div. 3) 解法概要
CF1872B 通路の限界
問題概要
一列に並んだ部屋のうち、いくつかには罠があります。各罠のある部屋には、到達可能な時間の制限があります。プレイヤーは1番目の部屋から最大で何番目の部屋まで往復できるかを求めます。
解法
各罠部屋の到達可能な最大位置を計算します。この位置は、罠の発生時間の半分を基準に計算されます。すべての罠部屋を距離順にソートし、途中で到 ...
5月18日 19:20 投稿
Codeforces Round #627 解法解説
A - Yet Another Tetris Problem
n個の整数a_iが与えられます。各操作では、任意のiについてa_iを2増やすか、すべてのa_iを1減らすことができます。すべての値を0にできるか判定してください。
解法:すべての値の偶奇が一致する場合のみ可能です。
#include <iostream>
using namespace std;
void solve() {
int n, first, val;
cin >> n >> first;
fi ...
5月17日 19:21 投稿
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 投稿
Codeforces Round 859 Div.4 のアルゴリズム解法と実装解説
問題 A: Plus or Minus
問題概要
3つの整数 a, b, c が与えられます。演算子として + または - のいずれかを用いて a と b を結合した結果が c と一致する場合、該当する演算子を出力してください。必ずいずれか一方のみが成立することが保証されています。
解法のアプローチ
単純な条件分岐で対応可能です。和 a + b が c と等しければ + を、等号が成立しなければ必然的 ...
5月13日 22:32 投稿