[Codeforces] Codeforces Round #676 (Div. 2) A. XORwice
排他的論理和は \( 1 \oplus 1 = 0 \)、\( 0 \oplus 1 = 1 \) となるので、\( a, b \) の \( i \) ビット目を \( a_i, b_i \) とすると、\( a_i = 1 ...
[AtCoder] ABC 180 E – Traveling Salesman among Aerial Cities
いわゆる巡回セールスマン問題というやつです。
\( g(i, j)\) を都市 \( i \) から都市 \( j \) に移動するときのコストとします。\( d(i, j) \) を訪れた都市の状態 \( i \ ...
[AtCoder] ABC 180 D – Takahashi Unevolved
カコモンジムに通うことを操作1、AtCoder ジムに通うことを操作2とします。
\( i \) 回目の操作を行ったときの高橋君の強さを \( X_i \) とします。操作1を行うと、\( X_{i + 1} = ...
[AtCoder] ABC 180 C – Cream puff
人数が \( N \) の約数であるとき平等に分けることができるので、約数の列挙を行います。 \( N \bmod x = 0 \) であるとき、\( x \) は \( N \) の約数となるので、\( 1 \leq x \ ...
[yukicoder] No. 1256 連続整数列
\( A = 1 \) のとき条件を満たす連続整数列は存在しません。負の整数の数を \( m \)、正の整数の数を \( n \) とすると、\( n > m \) を満たす必要があり、\( n= m + 1 \) のと ...
[AtCoder] ARC 007 C – 節約生活
\( i \) から \( i + 1 \) 分が視聴できる状態をビットを用いて、\( i \) ビット目が \( 1 \) であるとします。そうでないときは \( 0 \) です。
与えられた文字列を、\( a_ ...
[AtCoder] ARC 006 C – 積み重ね
山 \( i \) に積まれている一番上の重さを \( v_i \) とします。初期値は、\( v_1 = w_1 \) です。段ボール \( j \) が全ての山に対して \( v_i < w_j \) を満たすとき、 ...
[Codeforces] Educational Codeforces Round 96 (Div. 2) D. String Deletion
あまり理解していませんが、操作 1. で選ぶ文字は、同じ文字が連続する部分文字列のなかで一番左のものを選ぶみたいです。
コード#include <bits/stdc++.h>using namespace std; ...
[AtCoder] ARC 105 B – MAX-=min
カードの置き換えは全ての \( X \) に対して行われるので、セットを用います。セットは順序付きなので、最小値 \( x \) と最大値 \( X \) の取得を高速にできます。このとき、セットから \( X ...
[Codeforces] Codeforces Global Round 11 A. Avoiding Zero
配列 \( a \) の総和が \( 0 \) のときは条件を満たす \( b \) は存在しません。配列 \( a \) の総和を \( s \) とすると、\( s > 0 \) のとき、\( a \) を降順に並べ ...