AtCoder

ABC088: D - Grid Repainting

問題 D - Grid Repainting

ABC085: D - Katana Thrower

問題 D - Katana Thrower

ABC084: D - 2017-like Number

問題 D - 2017-like Number

ABC080: D - Recording

問題 D - Recording

ABC079: D - Wall

問題 D - Wall

ABC070: D - Transit Tree Path

問題 D - Transit Tree Path

ABC064: D - Insertion

問題 D - Insertion

ABC054: D - Mixing Experiment

問題 D - Mixing Experiment

square869120Contest #5: B - Emblem

問題 B - Emblem

square869120Contest #3: B - 石落としゲーム

問題 B - 石落としゲーム / Falling Stone Game

NJPC2017: B - 格子グラフ

問題 B - 格子グラフ

ARC073: D - Simple Knapsack

問題 D - Simple Knapsack

COLOCON 2018-Final: A - ファイティング・タカハシ

問題 A - ファイティング・タカハシ

ウクーニャたんお誕生日コンテスト: A - UkuNumber

問題 A: UkuNumber - ウクーニャたんお誕生日コンテスト | AtCoder

A - 正方形のチップ2

問題 A - 正方形のチップ2

第4回 ドワンゴからの挑戦状 予選: B - 2525文字列分解

問題 B - 2525文字列分解

天下一プログラマーコンテスト2016予選A: B - PackDrop

問題 B: PackDrop - 天下一プログラマーコンテスト2016予選A | AtCoder

Tenka1 Programmer Contest 2017: C - 4/N

問題 C - 4/N

CODE FESTIVAL 2017: A - AKIBA

問題 A - AKIBA

AGC014: A - Cookie Exchanges

問題 A - Cookie Exchanges

ARC099(ABC101): C - Minimization

問題 C - Minimization

AtCoder CodeFormula2014 予選A C - 決勝進出者

問題 http://code-formula-2014-quala.contest.atcoder.jp/tasks/code_formula_2014_qualA_cN回の予選があり、開かれる順序の早い順に、それぞれの順位がK位まで与えられる。ここからK人を選抜したい。選抜の方法は以下である。 1. 予選の順位が高いほうが優…

JAG夏合宿2014 3日目 H - Points and Lines

問題文 http://jag2014autumn.contest.atcoder.jp/tasks/icpc2014autumn_h感想 問題文には左優先で計算すると書いてあるが、自分は初めは、順序は任意に決定されるかつ幾何的制約を満たすものが最終的な解になるのでは、と思ってしまった。以下の参考問題の…

JAG夏合宿2014 3日目 A - North North West

#include <bits/stdc++.h> using namespace std; #define REP(i,a,b) for(int i=a; i<(int)b; i++) #define rep(i,n) REP(i,0,n) int main() { string str; while(cin >> str) { if(str == "#") break; vector<int> order; rep(i, str.size()) { if(str[i] == 'n') { order.push_</int></bits/stdc++.h>…

AtCoder BeginnerContest 014 D

解答 根付き木において、頂点 a, b 間を辿る最短パスはの最も近い共通祖先の頂点である。よって LCA を用いて、頂点 a までの深さ + 頂点 b までの深さ - 2*共通祖先の頂点 + 1 が答えとなる。 まだ自力でLCAを書くことが出来ないので蟻本そのままのコードを…

AtCoder BeginnerContest 014 C

解説 いもす法。 まず一次元で状態が変わる点をイベントとしてみて、カウンタ +1, -1 の増減を設定する。O(N) 累積和を取り、実際の状態の遷移状況を求める。O(N) よって全体で O(N) #include <bits/stdc++.h> using namespace std; #define MAX (1000000) int imos[MAX+10]</bits/stdc++.h>…

AtCoder BeginnerContest 014 B

解説 状態を2進数値化して考えて、指定の位置にビットが立っているかどうかで N 個の ON / OFF を調べる手技。 X と (1 論理積が 0 でないなら、i 番目にビットが立っている。 #include <bits/stdc++.h> using namespace std; int main() { int N, X; cin >> N >> X; int s</bits/stdc++.h>…

AtCoder BeginnerContest 014 A

解説 足りない分は b - (a を b で割った余り) である。 数が余らない時は 0 を出力するのに気をつける。 #include <bits/stdc++.h> using namespace std; int main() { int a, b; cin >> a >> b; cout << ((a%b) ? b-a%b : 0) << endl; return 0; }</bits/stdc++.h>

AtCoderBegginnerContest #005 C: おいしいたこ焼きの売り方

問題 Aの発生と消失の中でBが可能か判定するタイプのシミュレート問題(参考: AOJ0231 Dangerous Bridge)解法 pair(時間, 種類) で入力を vector > につめる。シミュレートに queue を使う。 #include <iostream> #include <algorithm> #include <vector> #include <queue> using namespace std;</queue></vector></algorithm></iostream>…