HDU 3605 Escape 最大流or二分图多重匹配 2010 ACM-ICPC Multi-University Training Contest(17)——Host by ZSTU

B站自动答题协议分析 使用Python写了一个自动答题机器人!基于接口协议实现且包含点选验证码识别 阅读详情

 

Escape

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 1122 Accepted Submission(s): 321


Problem Description
2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live some of the planet. Now scientists want your help, is to determine what all of people can live in these planets.

Input
More set of test data, the beginning of each data is n (1 <= n <= 100000), m (1 <= m <= 10) n indicate there n people on the earth, m representatives m planet, planet and people labels are from 0. Here are n lines, each line represents a suitable living conditions of people, each row has m digits, the ith digits is 1, said that a person is fit to live in the ith-planet, or is 0 for this person is not suitable for living in the ith planet.
The last line has m digits, the ith digit ai indicates the ith planet can contain ai people most..
0 <= ai <= 100000

Output
Determine whether all people can live up to these stars
If you can output YES, otherwise output NO.

Sample Input

1 1
1
1

2 2
1 0
1 0
1 1


Sample Output
YES
NO
Source

Recommend
lcy
 
 
一看就是一个网络流,建图套上模板提交,RE...
边算小了,改大变成TLE,然后用尽各种方法还是TLE
开始怀疑不是网络流了,因为点太多了。
换成二分图多重匹配,TLE。。。
杯具的以为今晚要0AC了(又是一次练习赛)。。。
于是忍不住去搜了一下解题报告,
确实有网络流解法,不过n=10^6肯定TLE,不过m<=10很小,
那么所有人的选择只有2^m种,统计这个2^m中选择的数量,
这2^m种选择作为节点连接到m个星球节点边权为统计的数量,
源点s到这些节点边权同上(我写的inf一直WA,为什么会错呢),
m个星球节点到汇点t连边,边权为星球容量。
这样10^6的节点减少到10^3就能不TLE了。
其实下午才刚做了一道类似的缩小数据范围的题,怎么晚上就忘了呢。。。
ACMDIY第二届群赛 Ahui Writes Word :一个01背包问题,可是n=100000,v=10000
肯定TLE,不过体积和价值都是《=10,可以把它转换为100类物品的多重背包,
再用二进制压缩转换为01背包求解。
-------------------------------------------------------------------------------------------------------
本题还可以用二分图多重匹配解,刚开始把标记数组开大了,导致一直TLE...
标记数组开10就够了,我弄了个10万,不超时才怪。。。
 
还有这个要用C++提交才不超时,不过可以用输入外挂G++、C++都非常快
 
最大流代码:
#include<cstdio>
#include<cstring>
#define N 2005
#define M 30005
#define inf 999999999
#define min(a,b) ((a)<(b)?(a):(b))

int n,m,s,t,num,adj[N],dis[N],q[N];
struct edge
{
	int v,w,pre;
	edge(){}
	edge(int vv,int ww,int p){v=vv;w=ww;pre=p;}
}e[M];
void insert(int u,int v,int w)
{
	e[num]=edge(v,w,adj[u]);
	adj[u]=num++;
	e[num]=edge(u,0,adj[v]);
	adj[v]=num++;
}
int bfs()
{
	int i,x,v,head=0,tail=0;
	memset(dis,0,sizeof(dis));
	dis[s]=1;
	q[++tail]=s;
	while(head!=tail)
	{
		x=q[head=(head+1)%N];
		for(i=adj[x];~i;i=e[i].pre)
			if(e[i].w&&!dis[v=e[i].v])
			{
				dis[v]=dis[x]+1;
				if(v==t)
					return 1;
				q[tail=(tail+1)%N]=v;
			}
	}
	return 0;
}
int dfs(int x,int limit)
{
	if(x==t)
		return limit;
	int i,v,tmp,cost=0;
	for(i=adj[x];~i&&cost<limit;i=e[i].pre)
		if(e[i].w&&dis[x]==dis[v=e[i].v]-1)
		{
			tmp=dfs(v,min(limit-cost,e[i].w));
			if(tmp)
			{
				e[i].w-=tmp;
				e[i^1].w+=tmp;
				cost+=tmp;
			}
			else
				dis[v]=-1;
		}
	return cost;
}
int Dinic()
{
	int ans=0;
	while(bfs())
		ans+=dfs(s,inf);
	return ans;
}
int main()
{
	while(~scanf("%d%d",&n,&m))
	{
		int i,j,k,a,w,x[2005]={0};
		memset(adj,-1,sizeof(adj));
		num=0;
		s=0;
		t=2000;
		for(i=0;i<n;i++)
		{
			k=0;
			for(j=0;j<m;j++)
			{
				scanf("%d",&a);
				if(a)
					k|=1<<j;
			}
			x[k]++;
		}
		for(i=0;i<(1<<m);i++)
			if(x[i])
			{
				insert(s,i+1,x[i]);
				for(j=0;j<m;j++)
					if(i&(1<<j))
						insert(i+1,j+10+(1<<m),x[i]);
			}
		for(j=0;j<m;j++)
		{
			scanf("%d",&w);
			insert(j+10+(1<<m),t,w);
		}
		puts(Dinic()>=n?"YES":"NO");
	}
}


二分图多重匹配代码:
#include<cstdio>
#include<cstring>
#include<iostream>

int n,m,w[15],cnt[15];
int adj[100010][12],mat[12][100010];
bool f[15];
bool dfs(int x)
{
	int i,j,v;
	for(i=0;i<m;i++)
		if(!f[i]&&adj[x][i])
		{
			f[i]=1;
			if(cnt[i]<w[i])
			{
				mat[i][cnt[i]++]=x;
				return true;
			}
			for(j=0;j<cnt[i];j++)
				if(dfs(mat[i][j]))
				{
					mat[i][j]=x;
					return true;
				}
		}
	return false;
}
bool ok()
{	
	int i;
	memset(cnt,0,sizeof(cnt));
	for(i=0;i<n;i++)
	{
		memset(f,0,sizeof(f));
		if(!dfs(i))
			return false;
	}
	return true;
}
int main()
{
	while(~scanf("%d%d",&n,&m))
	{
		int i,j;
		for(i=0;i<n;i++)
			for(j=0;j<m;j++)
				scanf("%d",&adj[i][j]);
		for(j=0;j<m;j++)
			scanf("%d",&w[j]);
		puts(ok()?"YES":"NO");
	}
}

【人工智能】Gemini怎么使用智能体的能力? Gemini Gems: 定制你的AI智能体 Gems 是 Gemini 的定制版本。你可以通过设定特定的指令(Instructions),让它变成你需要的专家。一旦创建,它会记住这些设定,你不需要在每次对话时重复输入背景信息。目前创建和使用自定义 Gems 通常需要订阅(Google One AI Premium 计划)。对于大多数用户来说,Gemini Advanced 中的 Gems是使用智能体能力的最直接方式。它能让你把重复性的提示词封装成一个好用的工具。 阅读详情

相关推荐

Echocardiography Image Segmentation: A Survey(超声心动图图像分割方法综述--中文翻译)

Echocardiography Image Segmentation: A Survey 摘要:尽管超声图像的获取是较廉价,并且免于辐射的,但是超声图像因为信号衰减、斑点噪声等干扰,使得超声图像的分割具有较大挑战。本文将近些年应用于超声心动图像分割的相关方法进行了分类总结,并列出了10篇具有原创思想的文章,这些文章具有特殊的临床使用价值或是对于超声心动图像分割具有指导意义。 关键词:超声心动...

mrj4124的博客 5097

HDU-3605-Escape(最大流+状态压缩)

状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩状态压缩

qq_43803508的博客 347

TC3xx芯片中断配置避坑指南:从AUTOSAR Davinci配置到SRN地址计算的完整流程

本文详细解析了英飞凌TC3xx芯片的中断配置流程,从AUTOSAR Davinci工具链到硬件调试的全链路指南。重点介绍了中断路由(IR)模块、服务请求节点(SRN)和中断控制单元(ICU)的配置技巧,帮助开发者避开常见陷阱,优化中断性能。

weixin_30628801的博客 409

HDU - 3605: Escape网络流 + 状态压缩

分析 这道题挺巧妙的 看题干是一个裸的二分图匹配,但问题是点数已经到达了10610 ^ 6106的规模,众所周知dinicdinicdinic算法只能处理104∼10510 ^ 4 \sim 10^ 5104∼105之内的网络,所以我们得想办法去优化这个网络 观察一下可以发现,左边的点数有10510 ^ 5105个,右边的点数有101010个,右边每一个点都对应着210(1024)2^{10}(1024)210(1024)种状态,所以,我们可以优化建图方式 源点和每一种状态相连,流量为每一种状态出现的次数,

tlyzxc的博客 230

f_fs.c 初始化流程(进行中)

前言 之所以选择f_fs.c作为这系列的开始,因为usb在/driver/usb下面的内容实在太多太多,如果讲各种各样点会太分散了。所以决定切入点以实际使用为主,就是f_fs了,目前我了解这是做bulk裸传输使用的,具体的通信协议自己确定。 初始化部分 开始点从这个路径下说起, /drivers/usb/gadget/function/f_fs.c 然后f_fs.c第一个使用的是include/composite.h中的宏定义function #define DECLARE_USB_FUNCTION(_n

weixin_36406973的博客 1966

SCL3400-D01双轴高精度倾角计

简介 两轴高精度加速度计,提供两个模式。 ±30° with 10 Hz LPF ±90° with 40 Hz LPF Resolution up to 32768 LSB/g Ultra-low 0.0009°/√Hz noise density 这款传感器是替换之前村田的停产的模拟量系列的芯片,正在测试中,具体效果大伙可以评测。 一、引脚连接图 引脚图兼容SCL3300 二、SPI接口 1.SCL3300和SCL3400略有区别如下图 左边为SCL3...

专注惯导领域 3807

2010 ACM-ICPC Multi-University Training Contest(1) ——A Task Process

<br />/* 题目大意: 有x个A任务,y个B任务,n个人,第i个人完成一个A任务的时间为a[i], 完成一个B任务的时间为b[i],求:完成所有任务的最小时间? 注意: (1)两个人可以同时完成不同的任务 (2)也可以同时完成相同任务的不同子任务 主要算法: DP + Binary Search 过程: 首先用二分法定位时间 T 选定时间后使用DP计算时间是不是满足要求 满足要求后继续二分直到时间最少且满足

baobaoyeye的专栏 664

Python爬虫反爬:突破Cloudflare 5秒盾(免费方案,小红书/知乎可用)

这套方案的核心优势是“真实模拟+免费无门槛”无需付费代理、无需复杂JS解密,仅用playwright模拟真实浏览器,即可突破Cloudflare 5秒盾;适配小红书、知乎、豆瓣等主流平台,修改配置即可复用;兼顾易用性和稳定性,新手也能快速上手,企业级场景可通过IP轮换、异步爬取进一步优化。“模拟人类行为到底”——Cloudflare的反爬本质是区分“机器”和“人类”,只要爬虫的浏览器指纹、行为特征与人类一致,就能稳定绕过限制。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 2880

基于3D姿态估计与机器学习的足球射门速度预测实践

计算机视觉与机器学习技术正深度赋能体育科学领域,其中3D姿态估计作为一项关键技术,能够从单目视频中重建人体在三维空间中的骨骼关节点运动序列,为量化分析运动表现提供了数据基础。其核心原理是通过深度学习模型(如VideoPose3D)将2D图像关键点提升至3D空间,并结合时序信息恢复具有物理意义的运动模式。这项技术的价值在于能以非接触、低成本的方式,将教练员的经验性观察转化为可量化的动作特征数据。在足球训练等应用场景中,通过提取摆动腿关节角度、角速度等特征,并利用XGBoost等机器学习模型进行回归分析,可以实

weixin_30693683的博客 641

【数据分享】1985-2023 年中国 30m 生长季 NDVI 数据集:刘小平团队力作,Landsat 无缝融合无云产品

中山大学刘小平团队发布1985-2023年中国30m分辨率生长季Landsat NDVI数据集,解决了传统数据的三大痛点:无缝拼接、时间连续和质量可靠。该数据集基于5-9月生长季Landsat影像,通过云检测、多景融合等技术生成,已在GEE平台开放共享。其高分辨率、长时序特性为植被动态监测、LUCC研究等提供重要支撑,在农业、生态保护等领域具有广泛应用价值。

国科大硕士在读,分享Python/GEE/Matlab/R专业代码实践,涵盖数据分析、算法开发与应用技巧等,以代码会友。 1506

C#利用最小二乘法拟合任意次函数曲线

给出一组离散点,确定一个函数逼近原函数,插值是这样的一种手段。在实际中,数据不可避免的会有误差,插值函数会将这些误差也包括在内。因此,我们需要一种新的逼近原函数的手段: ①不要求过所有的点(可以消除误差影响);②尽可能表现数据的趋势,靠近这些点。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小 [1],其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达,具体可以查阅相关资料。最小二乘法(又称最小平方法)是一种数学技术。

qq_30725967的博客 3755

hdu 2010 ACM-ICPC Multi-University Training Contest(1)——Host by FZU(杯具了)

题目链接:2010 ACM-ICPC Multi-University Training Contest(1)——Host by FZU 昨天superbin把这套题拿出来做练习,5个小时过去了,杯具就这样发生了,一道都没过! 比赛后,看了wzc大牛的解题报告,刷了三道 hdu3433: A Task Process DP + 二分枚举 k表示第i个工人完成k件甲任务,(T - Ai...

weixin_30619101的博客 186

【知识分享】单端到混合S参数转换指南

信号完整性(SI)工程师几乎总是必须使用S参数,因为许多的高速接口和行业标准都正在转向串行链路架构,并使用基于S参数测量的频域限制指标,了解其工作过程将会很有意义。

一只豌豆象的博客 1576

2010 ACM-ICPC Multi-University Training Contest(3)——Host by WHU

又是一场0封的比赛 4 这个是当时觉得可以做的一个题,但是,测试数据2000组,导致奇数时n^2的复杂度超时。比赛时也想到打表,但是打出来代码长度超过65535B不让交(后来才知道很多人都是打表过的,但他们只打奇数,代码长度刚好6wB左右)。此题正解是dp 7 先q-p的差值排序,然后01背包 ...

tubaluer 262

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

2010 ACM-ICPC Multi-University Training Contest(14)——Host by BJTU

这场比赛 被掠的太残。1002 最水题。倒在黎明前的黑暗。首先因为别人很快就作出来了。所以当时你就开始紧张了。因此分析十分不到位。 其实思路是对的,但是因为别人先做出来,所以自己心慌,然后十分怀疑自己的思路。像这样的水题一定要分析清除。比赛的时候不被别人的速度所吓到。自己作自己的题。 但是这点又是多么不容易做到。 毕竟比赛的时候是未知的。 就会因为 小的一些细节自己没有想全。 造成自己做不好。

mindmb的专栏 844

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Hdu 3605(二分图+多重匹配)

Hdu 3605 (1)题意: 一个星球上可以住若干个人,给出每个人想要选择的星球,然后给出每个星球最多容纳的人数。 (2)思路: 二分图的多重匹配,将一个用二维数组存储每个星球能够待的编号如果人数小于星球的最大人数, 就可以住在这个星球,否则回溯修改之前的路径,查找之前的路径能否有其他情况。 (3)代码: #include<iostream> #in...

积少成多,水滴石穿 407

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

#HDU 3605 Escape (最大流 + 状态压缩)

Problem Description 2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live some of the plan...

OlaMins 236

hdu3605(网络流+状态压缩)

2012 If this is the end of the world how to do? I do not know how. But now scientists have found that some stars, who can live, but some people do not fit to live some of the planet. Now scientists wa...

JiaYao的博客 428

HDU - 3605 Escape 状态压缩最大流

题目链接 https://vjudge.net/problem/HDU-3605 题意 n个人(范围10w),m个星球(范围10),每个人有对星球的不同喜好,每个星球有自己的容量,问能否让所有人都在满意的星球上? 思路 一眼就是最大流(二分匹配我没学。。),朴素做法s向人连边权1,人向感兴趣星球连边权1,星球向t连边权为容量,跑dinic,一遍TLE,芜湖~ 之前学网络流的时候知道Dinic上界很糟糕,但是大部分题不卡,今天一查才知道上界是O(V²E),换了ISAP的板子也不行,百度一下得知需要状态压缩。

TheSunspot的博客 264

HDU - 3605

十分机智,由于n太大,一般的网络流估计过不了,(然而加了读入优化当前弧优化的代码,上午T掉了,下午A了。。。还是错的模板,反边的流量操作搞成+了。。。)所以因为m只有10,所以对于每个人来说,能适应这些星球的情况最多2^11-1种,于是就可以统计出每种情况的人数,然后把每种情况建个点,有多少人是这种情况,就从源点连多少流量的边到这个点,然后再根据情况连无穷大的边到星球点,最后从星球点连边到汇点,控

binarycopycode 437

HDU3605,最大流,状态压缩

题目链接:Escape 二分图的多重匹配,有最大流做的。如果按照普通的最大流建图,会TLE,这里考虑到m的范围是0-10,故用二进制状态压缩,最多也就2^10多种可能。 详见代码: /************************************************************************* &amp;gt; File Name: main.cpp &amp;gt; A...

salvete的博客 241

HDU3605 Escape(最大流)

有n个人要移居m个星球,给出每个合适的星球,每个星球最多能容纳的人数,问是否所有人都可以移居。(1≤N≤105,1≤M≤10)(1\leq N\leq 10^5,1\leq M\leq10) 一开始还以为是最大流的裸题,结果TLE,翻了翻题解才知道原因:N的范围太大,那么多条边连完就TLE了。 首先要明确一点,这么多人肯定有许多人的选择是重复的,而且总方案数不超过2102^{10},根据这个,我

ACMer_quack&cheer 1442

hdu3605 Escape

题意:n个人,m个星球,输入一个n*m的01矩阵,0表示第i个人不居住在第j个星球,反之居住。接下来m个数表示第i个星球最多居住多少个人。求是否能够让所有人都居住在星球上 题解:一开始以为是最大流的模版题,直接套模版,发现TLE了,因为人数是10e5,而m最大只有10,最多有2^10即1024中状态。所以对居住星球进行状态压缩,即每个状态有多少人居住,源点与状态连边,容量是该状态的人数,然后通过状态

llljw的博客 349

链接一个做水的例子(虽然什么解释都没有)

http://blog.sina.com.cn/s/blog_7f0562030102x1af.html

LOU09020207YES的专栏 578

2010 ACM-ICPC Multi-University Training Contest(4)——Host by UESTC

a 1, r 121 最后时刻,还剩14秒时水过 1 虽然最后时刻水过,但确实不能清楚地说出为什么。。。

tubaluer 194

2009 Multi-University Training Contest 1 题集(长期更新)

A题传送门: 题目大意:给数列的前三项,推出第n项的值; 题解:简单的求通项公式,不过注意题目数据比较大,而且在求等比数列的时候因为通项公式是    an = a1*q^(n-1);所以直接用pow就会出错,需要用快速幂处理就没事了; AC代码:#include #define ll long long #define mod 200907 using namespace std ;

Kelisiya 467
上一篇: HDU 3681 Prison Break 二分+搜索 The 35th ACM-ICPC Asia Regional Contest (Hangzhou)
下一篇: HDU4021 24 Puzzle The 36th ACM/ICPC Asia Regional Shanghai Site —— Online Contest
power721
博客等级 码龄18年 176粉丝 135原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值