ICPC国内予選2020 B問題:接触追跡

問題. 接触追跡

あるアプリを利用している人が  m 人いる。その中で  p 番目の利用者は感染者である。時刻順に濃厚接触の記録が  n 件与えられる。 i 番目の記録  a_i \neq b_i a_i 番目と  b_i 番目の利用者が濃厚接触したことを表している。感染者と直接的または間接的に感染した疑いのある利用者の総数を求めよ。

制約 1 \le m \le 100 0 \le n \le 1,000

続きを読む

Visual Studio での競技プログラミング管理方法

Visual Studio を使った競技プログラミングの始め方について紹介したいと思います.

(追記)競プロなどの手軽な環境としては Visual Studio Code を使用するのがベストだと思います(この記事の存在意義は...).

続きを読む

Visual Studio で Ubuntu ライクな競プロ環境

概要

今まで競プロを Ubuntu 上でテキストエディタSpacemacsコンパイラgccコマンドライン
から参加していました.最近とあることから Windows に改宗して開発環境を Visual Studio にしたため競プロから離れていました(本当は違う理由).改宗しても今まで慣れ親しんだ環境が忘れられなく Windows 上で近い環境を構築したのでメモを残します.

続きを読む

円板と多角形の共通部分の面積

問題. Circles - Intersection of a Circle and a Polygon

平面上の単純多角形  P と円板  C が与えられる.このとき, P \cap C の面積を求めよ.

単純多角形とは自己交差していない多角形で,  P P の頂点を反時計回りに訪れた頂点の列  (p_1, p_2, \ldots, p_n) で与えられ,  p_i の座標を  (x_i, y_i) で表す.
また,円板  C は中心  c で半径  r としたとき  C = \{ \|p - c\| \le r \mid p \in \mathbb{R}^{2} \} を満たす領域である.

制約 3 \le n \le 100,  1 \le r \le 100,  -100 \le x_i, y_i \le 100

続きを読む

2進数で有限小数となる10進有理数

10進法で表記した有理数を2進法の小数で表記したときに,有限の桁数で表すことができる有限小数になるための特徴付けを与える.この応用として10進法で表記した有限小数が計算機上で誤差を含む数値かどうかの判定ができる.

続きを読む

ABC134 F問題:Permutation Oddness

問題. Permutation Oddness

 \{1, 2, \ldots, N\} の順列  p の奇妙さを  \sum_{i = 1}^N |i - p_i| と定義する.奇妙さが  K であるような順列が何通りあるか答えよ.

制約 1 \le N \le 50,  0 \le K \le N^2

続きを読む