A. Two Squares
交わるならば,座標が半整数の点でも交わります.座標が小さいので全探索してしまえばよいです.
B. Open Communication
少し条件がややこしいですが普通に全探索できます.
C. Careful Maneuvering
一機以上を攻撃できる $x$ 座標の候補が少なくて,その $2$ 個組も少ないです.
D. Compute Power
平均値の最小化は二分探索で行います.
二分探索内では dp をします.コストの大きいものから使い方を決めるようにして,各時点で「$2$ 回使うことにした回数」「$1$ 回使うことにした回数」の組を状態とすればよいです.
E. Nikita and Order Statistics
01 列があって,区間和の頻度集計をする問題になります.
累積和をとって,$A[r]-A[l]$ の集計をする問題だということにします.
$l<r$ という条件下で数えるべきですが,この条件を無視して数えたあと負の部分は捨てて,$0$ の部分だけ適切にすればよいです.
よって,$A[i]+B[j]$ の集計をするという問題になって,畳み込み一回で解けます.
F. The Moral Dilemma
公式解説が間違っているので注意してください(途中までは正しいです).
コメントには独立集合列挙を含む解法があるようですが,多項式時間で解けます.
まず第 2 層のノード単体での出力について,通常モードの出力と反転モードの出力を $(y,z)$ とします.$(y,z)=(1,1)$ となるような入力がある場合,このノードは解に含めることはできません.
これがない場合,「常に $y=0$」「常に $z=0$」のうちちょうど一方が成り立ちます.さらに,入力が $(1,1,1,\ldots)$ であるときにもう一方の出力が $1$ になります.これらはこのノードに関係するネットワーク構造を全探索することで証明できます.これによって,ノードタイプを $2$ 種に分類します.
$2$ 種のノードが混ざっていると,入力が $(1,1,1,\ldots)$ であるときに矛盾します.よって調べるべき解の候補は,単一種類のノードだけからなる場合だけです.
$z=0$ タイプのノードのみからなる場合,反転モードでの第 $2$ 層は $(0,0,0,\ldots)$ となり,これらの nor として反転モードの出力は $1$ です.よって条件が成り立つためには,任意の入力に対して通常モードでの出力が $1$ であることが必要十分になります.これはノードが多いほど成り立ちやすい条件なので,このタイプのノードを全部ネットワークに含めた場合だけを検証すればよいです.
これで条件が成り立つかどうかを調べるには,通常モードでの出力が $0$ になるような入力が存在するかどうかを調べればよいです.さらにこのとき,第 2 層のノードは OR, NAND しかなくて,第 1 層のノードの値はすべて確定します.すると入力が満たすべき条件は two sat の形で書けるので線形時間で条件を判定可能です.