首页 > 小红的二分图构造
头像 只会签到题
发表于 2024-12-22 22:33:05
A~E题 A题 先找到>=l的最小x的倍数再判断是否<=r 或者先找到<=r的最大x的倍数再判断是否>=l都可以 void solved() { int l,r,x; cin>>l>>r>>x; int mi=(l+x-1)/x*x; 展开全文
头像 牛客856751393号
发表于 2025-03-07 21:12:06
while True: try: n = int(input()) # 节点数量 d = [0] + list(map(int, input().split())) # 节点度数 total = sum(d) if t 展开全文
头像 Gooby114514
发表于 2024-12-24 14:15:09
E 小红的二分图构造 先思考如何把 判掉。 由于一条边贡献 的度,所以所有点的度数和必须为偶数。 接下来考虑如何构造。我们可以直接按照二分图的定义来,把原来的所有点分成两个集合,保证两个集合的度数和相等即可。 那么现在问题就变成了如何分集合,注意到这是一个经典01背包,但是需要知道具体的方案 展开全文
头像 丨阿伟丨
发表于 2025-09-10 13:51:35
题目链接 PEEK154 小红的二分图构造 题目描述 给定 个节点的度数序列 (, ),要求构造一个含 个节点的二分图,使得第 个节点的度数恰好为 。 如果无法构造,输出 -1。否则,输出图的边数和所有边。构造的图可以包含重边,但不能有自环。 解题思路 这是一个构造性问题。解决问题的关键在于 展开全文
头像 LR我又馋了
发表于 2025-07-23 23:04:08
from math import inf def solved(): n = int(input()) degree = [0] + list(map(int, input().split())) k = sum(degree) if k % 2== 1: 展开全文
头像 TQ988
发表于 2025-07-08 17:31:22
import java.util.ArrayList; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scan 展开全文
头像 爱读书的高级磨洋工很野蛮
发表于 2025-08-06 12:57:44
def getHalf(d,s,t): now=0 for i,j in enumerate(s): if j==1: now+=d[i] if now==t//2: return s elif now>t 展开全文
头像 野蛮的小学生在创作
发表于 2025-03-26 19:21:29
import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; public class hj118 { public static void main(String[] args) { 展开全文
头像 Goldminer
发表于 2025-04-22 15:29:22
#include <iostream> #include <vector> #include <algorithm> using namespace std; void solved() { int n; // 节点数量 cin >> 展开全文
头像 番禺小韭菜
发表于 2025-03-04 21:18:56
#include <iostream> #include <vector> using namespace std; bool dfs(const int& first, const int& sum, const int& target, cons 展开全文