木構造における敬愛関係に基づく頂点削除順序
根付き木が与えられます。各頂点は 1 から n まで番号が付けられており、pi は頂点 i の親、ci は敬愛フラグです。ci = 1 のとき頂点 i は祖先を敬愛しておらず、ci = 0 のときすべての祖先を敬愛しています。根の pi は -1 です。
以下の条件を満たす非根頂点を 1 つ選び削除を繰り返します。
親を敬愛していない。
すべての子が自分を敬愛していない(子がいない場 ...
8月20日 11:44 投稿
ICPC南京2025 区域赛 CFGIJ 解法まとめ
C. キャンディの均等配分
問題の本質は「奇数個のキャンディは必ず偶数を生むため分割不可」という観察にある。したがって入力が偶数であれば単純に半分に分ければよく、奇数なら即座に不可と判定する。
void judge() {
long long N;
std::cin >> N;
if (N & 1) {
std::cout
7月18日 21:14 投稿
UKIEPC 2017 プログラミングコンテスト問題解説
Problem A: Alien Sunset
各惑星の自転周期、日の出時刻、日の入り時刻を格納します。自転周期の最大値(max_period)を求め、0からmax_period×1825までの時間を列挙します。各時間について全ての惑星で夜間であることを確認し、条件を満たす最初の時刻を出力します。
#include <bits/stdc++.h>
using namespace std;
struct Planet {
int period, sunrise, sunse ...
7月15日 16:15 投稿
Codeforces 909 問題A〜Fの解説
Codeforces 909 問題解説
問題URL
A B C D E F
難易度:赤 黄 緑 青 緑 紫
解説
A
問題概要:2つの文字列が与えられる。非空の接頭辞を連結した文字列の中で辞書順最小のものを求める。
アルゴリズムラベル:貪欲
解法分析:
辞書順比較は左から順に文字を比較し、どちらかが終了するか異なる文字が見つかるまで続ける。このため、貪欲法が有効。前後の文字列の接頭辞を比 ...
6月26日 19:39 投稿