CustomCC0-1.0#p0031900
Cycle-Finding Graph Labeler
Summary
- β’Phase 1 / mst, parity, union_find
- β’Reasoning-first competitive programming drill
Problem Description
Given an undirected graph with n nodes and m edges, and an array of n integers (labels), choose a subset of edges to keep such that the resulting graph is a forest and the sum of labels in each connected component is even. Find the maximum possible sum of kept edgesβ weights.
How to read this problem in plain language:
- This is a Phase 1 reasoning drill focused on mst, parity, unio.
- Typical lenses to test first: graph, mst, forest.
- Constraints reminder: 1 β€ , 0 β€ , 0 β€ , 1 β€
Mini examples for mental simulation:
1) Boundary example: Describe why this case is tricky. Explain expected behavior and why naive logic may fail.
2) Adversarial example: Adversarial case where naive greedy/local decision looks correct but fails globally.
Lite-mode writing target:
- Write 1~2 observations that shrink the search space.
- Name one final algorithm and state target complexity explicitly.
- Validate with at least 2 edge cases and one hand simulation.
Constraints
- β’1 β€ , 0 β€ , 0 β€ , 1 β€
Analysis
Key Insight
Use this hint to refine your reasoning. This step should reduce search space or formalize correctness. State why this insight changes your algorithm choice.
graphmstforestunion-findparity