Codeforces #285 (Div. 2) C - Misha and Forest

题意

      给出一个无相无环图(树或者是森林),给出每个节点周围节点编号个数和它周围节点的异或和,重构这棵树

思路

      首先,叶子节点的异或值肯定是他的父亲节点,这样,从叶子节点开始,从底层便能逐步推导出上层的树结构,从而得到答案

 

#include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<queue>
using namespace std;
const int nMax = 100000;
const int mMax = 100000;

class edge{
public:
    int u,v,nex;
};edge e[mMax];
int k,head[nMax];
void addedge(int a,int b){
    e[k].u=a;
    e[k].v=b;
    e[k].nex=head[a];
    head[a]=k;k++;
}

int aaa[nMax],bbb[nMax];
int vis[nMax];
queue<int>que;
int main(){
    int n,i,j,a,b,c;
    while(cin>>n){
        while(!que.empty())que.pop();
        memset(vis,0,sizeof(vis));
        for(i=0;i<n;i++){
            scanf("%d%d",&aaa[i],&bbb[i]);
            if(aaa[i] == 1){
                que.push(i);
                vis[i] = 1;
            }
        }
        k = 0;
        int ans = 0;
        memset(head,0,sizeof(head));
        while(!que.empty()){
            a = que.front();
            que.pop();
            if(aaa[a]!=0){
                addedge(a,bbb[a]);
                ans ++;
                aaa[bbb[a]]--;
                bbb[bbb[a]]^=a;
            }
            if(!vis[bbb[a]]){
                if(aaa[bbb[a]]==1){
                        vis[bbb[a]] = 1;
                        que.push(bbb[a]);
                }
            }
        }
//        cout<<ans<<" dd "<<k<<endl;
        cout<<ans<<endl;
        for(i=0;i<k;i++){
            cout<<e[i].u<<" "<<e[i].v<<endl;
        }
    }
    return 0;
}

 

内容概要:本文档详细介绍了一个基于MATLAB实现的电力负荷预测项目,该项目运用遗传算法(GA)优化支持向量回归(SVR)和支持向量机(SVM)模型的超参数及特征选择。项目旨在解决电力系统调度、发电计划、需求侧响应等多个应用场景中的关键问题,特别是在应对高比例可再生能源接入带来的非线性、非平稳负荷预测挑战。文中涵盖了从数据接入、特征工程、模型训练到部署上线的全流程,包括详细的代码示例和GUI设计,确保方案的可复现性和实用性。 适用人群:具备一定编程基础,尤其是熟悉MATLAB语言和机器学习算法的研发人员;从事电力系统调度、电力市场交易、新能源消纳等相关领域的工程师和技术专家。 使用场景及目标:①通过构建面向小时级别的滚动预测,输出高分辨率负荷轨迹,为日内与日前滚动调度提供边际成本最小化的依据;②在负荷高峰和供给紧张时,通过价格信号或直接负荷控制实施需求侧响应,提升削峰效率并抑制反弹;③为灵活性资源(调峰机组、储能、可中断负荷)提供更清晰的出清路径,降低弃风弃光率,提升系统整体清洁度;④帮助市场主体更准确地评估边际出清价格变化,提高报价成功率与收益稳定性,同时降低由预测偏差带来的风险敞口;⑤在运维与审计场景中,对预测产生的原因进行说明,保障业务侧与监管侧的可追溯性。 阅读建议:此资源不仅提供了完整的代码实现和GUI设计,更注重于理解GA优化过程中涉及到的数据处理、特征构造、模型选择及评估等核心步骤。因此,在学习过程中,建议结合实际案例进行实践,并深入研究每个阶段的具体实现细节,特别是适应度函数的设计、超参数空间的定义以及多样性维护机制的应用。此外,关注项目中关于数据对齐、缺失值处理、特征标准化等方面的最佳实践,有助于提高模型的鲁棒性和泛化能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值