AtCoder

問題方針

セットを使います。

コード#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { int N; cin>>N; s ...

AtCoder,数え上げ,数学

問題方針

\( n \) 個の自然数から任意の個数の和の組み合わせは、

\

となります。これは、最大値が \( n \) 個の和であるためです。ここで、関数 \( f(x) \) を

\

...

AtCoder,数え上げ

問題方針

いわゆる頻度を数え上げる問題です。

コード#include <bits/stdc++.h>using namespace std;typedef long long ll;int main() { int N; c ...

AtCoder,累積和

問題方針

まず初めに、\( S_i \neq S_j \wedge S_i \neq S_k \wedge S_j \neq S_j \) を満たす組の数を求めます。これは、\( i, j \) について、\( S_i \neq S_j ...

AtCoder,数学

問題方針

for 文で愚直に繰り返します。

コード#include <bits/stdc++.h>using namespace std;typedef long long ll;//最大公約数ll gcd(ll m, ll ...

AtCoder,実装,整列

問題方針

数字の桁数を増やすことで新たなルンルン数を得ることを考えます。あるルンルン数 \( s \) の末尾の数字を \( d \) とすると、\( 10s + d, 10s + d – 1 , 10s + d + 1 \ ...

AtCoder,数学

問題方針

整数 \( t \) が \( N – tK > 0\) を満たし、\( t \) が最大値を取るとき、\( N – tK = N \bmod K \) となります。  また、\( N ...

AtCoder,数学

問題方針

頂点 \( i \) と 頂点 \( j \) の最短距離を \( l(i, j) \ (i < j)\) とすると、頂点 \( X \) と 頂点 \( Y \) と経由して行く方法を考えると、

\ ...