BZOJ1934 善意的投票

机器学习-02 模型的评估与选择 2.1 误差与过拟合 我们将学习器对样本的实际预测结果与样本的真实值之间的差异成为:误差(error)。定义: 在训练集上的误差称为训练误差(training error)或经验误差(empirical error)。 在测试集上的误差称为测试误差(test error)。 学习器在所有新样本上的误差称为泛化误差(generalization error)。 显然,我们希望得到的是在新样本上表现得很好的学习器,即泛化误差小的学习器。因此,我们应该让学习器尽可能地从训练集中学出普适性的“一般特征”,这 阅读详情

题目描述

幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。我们的问题就是,每位小朋友应该怎样投票,才能使冲突数最小?

解析:


经典的二者选其一的模型,思想很简单,假如两人之间有一个人能改变其状态,那他们就可以划到一个集合中去,考虑最小割,每个小朋友若是赞成,建一条(s,i,1),否则建一条(i,t,1);对一对朋友i,j而言,建(i,j,1),(j,i,1),然后跑最大流求个最小割即可。

代码:

#include<iostream>
#include<cstdio>
#include<cstring>
#include<queue>
#define inf 1e9
using namespace std;
struct point
{
    int to;
    int next;
    int dis;
}e[100010];
int n,m,num,s,t;
int h[21000],head[21000],a[10010];
void add(int from,int to,int dis)
{
    e[num].next=head[from];
    e[num].dis=dis;
    e[num].to=to;
    head[from]=num++;
}
bool bfs()
{
    memset(h,0,sizeof(h));
    h[s]=1;
    queue<int>q;
    q.push(s);
    while(!q.empty())
    {
        int x=q.front();
        q.pop();
        for(int i=head[x];i!=0;i=e[i].next)
        {
            int to=e[i].to;
            if(!h[to]&&e[i].dis)
            {
                q.push(to);
                h[to]=h[x]+1;
            }
        }
    }
    return h[t];
}
int dfs(int x,int dis)
{
    if(x==t)
        return dis;
    int sum=0;
    for(int i=head[x];i!=0;i=e[i].next)
    {
        int to=e[i].to;
        if(h[to]==h[x]+1&&e[i].dis)
        {
            int diss=dfs(to,min(dis,e[i].dis));
            if(diss>0)
            {
                sum+=diss;
                dis-=diss;
                e[i].dis-=diss;
                e[i^1].dis+=diss;
                if(!sum)
                    break;
            }
        }
    }
    if(!sum)
        h[x]=-1;
    return sum;
}
int dinic()
{
    int tot=0;
    while(bfs())
        tot+=dfs(s,inf);
    return tot;
}
void ADD(int from,int to,int dis)
{
    add(to,from,0);
    add(from,to,dis);
}
int main()
{
    scanf("%d%d",&n,&m);
    t=n+1;
    for(int i=1;i<=n;i++)
    {
        scanf("%d",&a[i]);
        if(a[i]) ADD(s,i,1);
        else ADD(i,t,1);
    }	
    for(int i=1;i<=m;i++)
    {
        int x,y;
        scanf("%d%d",&x,&y);
        if(a[x]!=a[y])
        {
            ADD(x,y,1);
            ADD(y,x,1);
        }
    }
    printf("%d",dinic());
    return 0;
}

MIPI RFFE 信号完整性与硬件设计 MIPI RFFE信号完整性设计关键点 摘要:MIPI RFFE作为射频前端控制总线,其信号完整性设计需平衡速率、驱动能力与抗干扰性。核心挑战在于确保接收端在52Mb/s速率下保持足够的电压和时序裕量。关键设计考量包括: 驱动能力优化:过强导致过冲/振铃和射频杂散,过弱则恶化时序裕量,需与总线负载匹配。 波形质量指标:严格控制上升/下降时间(兼顾EMC和时序要求),抑制过冲/振铃幅度,管理VIO电源纹波和耦合噪声。 阅读详情

相关推荐

matlab kwave模拟超声换能器学习笔记

kwave模拟超声换能器的学习笔记,从零开始造车轮

SolvingMaster的博客 3198

BZOJ 1934: [Shoi2007]Vote 善意的投票

Description 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。 我们的问题就是,每位小朋友应该怎样投票,才能使冲突数最小? Input

jjs98 697

正交试验实战指南:从PICT工具到混合水平表应用

本文详细介绍了正交试验法在测试设计中的实战应用,从基础概念到PICT工具的高级使用技巧。通过混合水平表设计和工程化实践案例,帮助测试工程师高效解决参数组合爆炸问题,提升测试覆盖率与效率。特别适合兼容性测试和复杂系统验证场景。

weixin_29230865的博客 260

BZOJ1934【最小割】

/* I will wait for you */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define make(a,b) make_pair(a,b) #define fi fi

Lethelody的专栏 504

pyecharts可视化图表-tree:从入门到精通

本文系统介绍了树图(Tree Chart)的可视化技巧,包含基础实现、方向定制和环形布局等实例。树图能清晰展示层次结构数据,适用于组织架构、文件系统等场景。教程详细解析了pyecharts树图的核心配置项,包括数据准备、方向设置(下上、右左)和样式定制,并提供了完整代码示例。通过本指南,读者可快速掌握专业树图的构建方法,实现复杂层次数据的可视化呈现。

大数据内容个人总结与分享 1970

善意的投票

题目大意: 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。每位小朋友应该怎样投票,才能使冲突数最小? 明眼人应该能看出来是一个最小割的问题,为什么是最小...

青烟绕指柔的博客 388

微信小程序 - 解决支付报错 requestPayment:fail access denied (微信支付提示错误requestPayment:拒绝访问失败,真机运行测试或打包编译上线后报错问题)

微信小程序,微信支付,wx.requestPayment,微信小程序支付报错requestPayment:fail access denied,调不起微信,无法唤起支付弹窗,支付失败,支付权限没问题,小程序上线后支付报错,小程序真机测试支付报错,微信小程序苹果ios系统手机无法支付,小程序发布上线后支付报错,本地测试没问题,拒绝访问失败,小程序调起支付API requestPayment:fail:access denied微信开发者工具正常支付,权限没问题,微信公众平台,依旧报错怎么办,检查了appid都

🏆 前端领域优质创作者 1万+

[SHOI2007] 善意的投票 题解

最近做网络流都快做吐了。。。 善意的投票 常规的最小割问题,只是建边略微有些巧妙。 题目分析: 第一步,先确定源点和汇点。常规思路:将源点看作同意,汇点看作不同意; 因为题目要求最小冲突数,什么意思呢?分析一下,其实就是让你求建好网络流的最小割。 原因: 因为已经确定了源点为同意,汇点为不同意,所以连向源点的边意为同意,汇点则相反。 那么如果任意一点既可以通向源点,又可以通向汇点,就说明这个点是冲突的(有两种选择)感性理解一下。 因此,要使其不冲突,就要让源点 sss 和汇点 ttt 不联通。所以冲突

Araki_spring的博客 252

基于ZYNQ PL的AD7606数据采集与FFT实时频谱分析:从硬件到创新实现

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kKnmpgJm-1750295287594)(https://example.com/fft_plot.png)]本文涉及代码已在Xilinx ZCU102开发板与AD7606评估板上验证通过,采样率支持200KSPS@8通道,FFT计算延迟<1ms。传统MCU+DSP方案难以兼顾速度与功耗,而ZYNQ的PL+PS架构为这一问题提供了完美解决方案。本文实现的ZYNQ PL方案突破了传统处理器的性能瓶颈,通过。

QQ_778132974的博客 339

Epicor ERP 界面新增客制化字段操作方法

我发现国内对于epicor这个erp软件的教程非常少,所以录制一些我实际遇到的需求,整理了实现过程,提供给大家参考。

cqxianggang的专栏 413

【BZOJ1934】【codevs2341】善意的投票,二分图最小割

只要想起一生中后悔的事,梅花便落了下来。

xiaoyimi的博客 531

MCAL中MCU的配置

MCAL配置中MCU配置,PLL计算配置,系统时钟以及各模块参数配置

dhyw12399999的博客 3794

bzoj1934[Shoi2007]Vote 善意的投票

bzoj1934[Shoi2007]Vote 善意的投票 题意: n个小朋友通过投票来决定睡不睡午觉。每个人都有自己的主见,但也可以投和自己本来意愿相反的票。冲突总数为好朋友之间发生冲突的总数加上和自己本来意愿发生冲突的人数。求最小冲突数。 题解: 最小割,s向每个选1的人连边流量为1,每个选0的人连边流量为1。好朋友之间连流量为1的双向边。反思:理解错题意……以为冲突总数是每个...

anheku1562的博客 182

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

BZOJ 1934: [Shoi2007]Vote 善意的投票

二次联通门 :BZOJ 1934: [Shoi2007]Vote 善意的投票 /* BZOJ 1934: [Shoi2007]Vote 善意的投票 最小割 */ #include <cstdio> #include <iostream> #define rg register inline void ...

weixin_30349597的博客 73

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

[网络流] bzoj1934: [Shoi2007]Vote 善意的投票

bzoj1934: [Shoi2007]Vote 善意的投票 https://www.lydsy.com/JudgeOnline/problem.php?id=1934 网络流 考虑最小割 用最小割做决策 想睡觉的连源点 不想睡觉的连汇点 容量为1 朋友之间连双向边 容量为1 然后直接跑最小割就ok 这个证明很简单画一个图跑一个样例就很好理解了 大水题真的…… 都不好意思刷掉 ...

kkkGIGi_qtt 213

bzoj 1934: [Shoi2007]Vote 善意的投票

题目链接 bzoj 1934: [Shoi2007]Vote 善意的投票 题解 睡觉作为源点,不睡作为汇点 对于一个人违背自己的意愿,连向与自己意愿相反的源\汇,容量为1 对于朋友意见相反,在朋友之间连容量为2的双向边,切得时候双向边使得该边漫流 求一边最小割就是答案 代码 #include<queue> #include<cstdio> #include&l...

agtvo48266的专栏 178

【BZOJ 1934】 [Shoi2007]Vote 善意的投票

最小割建模典型题~

Regina8023 1153

【BZOJ1934】善意的投票

题面 http://darkbzoj.tk/problem/1934 $simple$的$network flow$ 每个人,两个选择,割掉S边或T边代表投赞成或反对。 把源点连向每个人,如果他本来赞成,则边权为1,否则边权为0 把每个人联向汇点,如果他本来反对,则边权为0,否则边权为1 对于一对朋友,如果他们的选择相反,即他们一个连S,一个连T,构成代价,可以连一条代价为1的双向边,...

weixin_30414305的博客 81

BZOJ1934: [Shoi2007]Vote 善意的投票

BZOJ1934: [Shoi2007]Vote 善意的投票 Description 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。 对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。 虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。 我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。 ...

weixin_30912051的博客 64

BZOJ1934Vote 善意的投票

1934: [Shoi2007]Vote 善意的投票Time Limit: 1 Sec Memory Limit: 64 MB Submit: 1574 Solved: 960 [Submit][Status][Discuss] Description幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是

DCrusher's blog 463

【BZOJ1934】善意的投票(网络流)

【BZOJ1934】善意的投票(网络流) 题面 Description 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所有和自己本来意愿发生冲突的人数。 我们的问题就是,每位小朋友应该怎...

weixin_30510153的博客 70

bzoj1934【shoi2007】Vote善意的投票

最小割

AaronPolaris 2024

[bzoj1934]: [Shoi2007]Vote 善意的投票

1934: [Shoi2007]Vote 善意的投票 Time Limit: 1 Sec  Memory Limit: 64 MB Submit: 2136  Solved: 1341 [Submit][Status][Discuss] Description 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有

Edt! 335

bzoj1934: [Shoi2007]Vote 善意的投票

题面在这里 题意: 有n个小朋友投票,1表示赞成0表示不赞成。有m对朋友关系。 现在给定n个小朋友的本来意愿。 定义冲突数为和自己本来意愿不同的投票数量,加上投不同票的朋友对数。 求最小的冲突数。 做法: 这道题一眼看就是网络流最小割。 然后想了很长时间没想出怎么建图qaq。。看来是要加强练习了呜呜 对于每一个小朋友x,本来是1的连S->x,本来是0的连x->T。 每一

juruo? juruo! 343

[bzoj]1934: [Shoi2007]Vote 善意的投票

原题链接: 善意的投票 题目大意: 选定每个人投的票的种类,使冲突最少。冲突数定义为:边的两端票种不一样的边数+违背自己意愿的个数。 理解题意: 可以把每个人都看成点。 若他想投同意票,则从源点向他连边。 若他想投反对票,则从他向汇点连边。 朋友之间,连正反流量都为1的双向边。 那么我们的目标就是把这么多人分成两个不同的集合(一个同意一个反对)。我们可以发现,如果我们记两个点之间有流...

Myka1991的博客 118

BZOJ 1934 善意的投票

题目链接: https://www.lydsy.com/JudgeOnline/problem.php?id=1934 题目大意: 幼儿园里有n个小朋友打算通过投票来决定睡不睡午觉。对他们来说,这个问题并不是很重要,于是他们决定发扬谦让精神。虽然每个人都有自己的主见,但是为了照顾一下自己朋友的想法,他们也可以投和自己本来意愿相反的票。我们定义一次投票的冲突数为好朋友之间发生冲突的总数加上和所...

weixin_34416754的博客 122
上一篇: BZOJ3144 切糕
下一篇: BZOJ1856 字符串
Slr2002
博客等级 码龄9年 3粉丝 31原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值