BZOJ 3037 创世纪】的更多相关文章

题解: 首先从基环树上的环上选两个点x,y 断开x,y之间的边,然后做树形DP. 设f[x]为选x的情况下的最大值,g[x]为不选x的情况下的最大值. 分两种情况讨论, 1.选x,则y一开始就处于被支配状态,在计算y的f[]函数值时需要特判. 2.不选x,按正常DP做即可. #include<cstdio> #include<vector> using namespace std; #define ll long long #define FILE "dealing&qu…
题目大意:给定一张有向图,每一个点有且仅有一条出边,要求若一个点x扔下去,至少存在一个保留的点y,y的出边指向x,求最多扔下去多少个点 首先原题的意思就是支配关系 我们反向考虑 求最少保留的点 要求一个点若扔出去 则必须存在一个保留的点指向它 于是这就是最小支配集 只是因为是有向图 所以一个点要么选择 要么被子节点支配 所以就仅仅剩下2个状态了 设f[x]为以x为根的子树选择x的最小支配集 g[x]为不选择x的最小支配集 然后因为是基环树林 所以我们选择一个环上的点 拆掉它的出边 设这个点为x…
3037: 创世纪 Time Limit: 5 Sec  Memory Limit: 128 MBSubmit: 123  Solved: 66[Submit][Status] Description applepi手里有一本书<创世纪>,里面记录了这样一个故事……上帝手中有着N 种被称作“世界元素”的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界.每种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素能够限制它,这样上帝就可…
简介 Library Genesis的Wikipedia条目中的介绍是: Library Genesis or LibGen is a search engine for articles and books on various topics,which allows free access to content that is otherwise paywalled or not digitized elsewhere. Among others it carries PDFs of con…
我们能否像神一样地创建一个世界? 对于创建世界而言,程序员的创作能力最接近于神--相对于导演,作家,漫画家而言,他们创建的世界(作品)一旦完成,就再也不会变化,创建的角色再也不会成长.而程序员创建的世界,每次运行都可以有不一样的内容,而且最为重要的,我们还能给与角色不能学习的能力(AI[人工智能]).本章就向你展示程序员像神一样创建世界的可能性以及为什么这一系列的文章叫<编程哲学>. 创世纪 起初...空虚混沌,渊面黑暗 神说:要有光 于是,就有了光... 神说:天上要布满星辰 于是,宇宙间布…
[BZOJ3037]创世纪 Description applepi手里有一本书<创世纪>,里面记录了这样一个故事……上帝手中有着N 种被称作“世界元素”的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界.每种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素能够限制它,这样上帝就可以保持对世界的控制.由于那个著名的有关于上帝能不能制造一块连自己都不能举起的大石头的二律背反命题,我们知道上帝不是万能的,而且不但不是万能的,他甚至有…
创世纪 SZP bzoj-3037/2068 Poi-2004 题目大意:给你n个物品,每个物品可以且仅可以控制一个物品.问:选取一些物品,使得对于任意的一个被选取的物品来讲,都存在一个没有被选取的物品,而且选取的个数最大. 注释:$1\le n \le 10^6$. 想法:显然,和骑士类似的,是一个基环树森林.如果A物品可以控制B物品,那就有B物品向A物品连边.对于每一个基环树,如果这个基环树是树的话显然变成树形dp入门题,暴力树形dp即可.然后对于基环树来讲,我们依然记录环上两点,分别以这两…
6401 创世纪 0x60「图论」例题 描述 上帝手中有 N(N≤10^6) 种世界元素,每种元素可以限制另外1种元素,把第 i 种世界元素能够限制的那种世界元素记为 A[i].现在,上帝要把它们中的一部分投放到一个新的空间中去建造世界.为了世界的和平与安宁,上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素限制它.上帝希望知道,在此前提下,他最多可以投放多少种世界元素? 输入格式 第一行是一个整数N,表示世界元素的数目. 第二行有N 个整数A1, A2, -, AN.Ai 表示第i…
40年的边上" title="图形学创世纪--写在SIGGRAPH 40年的边上"> 前言: SIGGRAPH是由ACM SIGGRAPH(美国计算机协会计算机图形专业组)主办的计算机图形与交互技术年度顶级会议,它集科学.艺术.商业于一身.历年大会都有丰富的成果展示,我们熟知的像素.图层.顶点等概念都是在SIGGRAPH上发表的学术报告,Pixar著名的<小台灯>动画短片也是首先在SIGGRAPH上展示的.2013年7月21日–25日,这一盛会迎来了它的40…
3929. [NOIP2014模拟11.6]创世纪 (Standard IO) Time Limits: 1000 ms Memory Limits: 65536 KB Description 上帝手中有着n种被称作"世界元素"的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界.每种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素能够限制它,这样上帝就可以保持对世界的控制. 由于那个著名的有关于上帝能不能制造一块连自己…
创世纪 这是我的第一道原创题 题解: 这道题的核心算法是:加维度的最短路+贪心 状态:\(dis[i][j][t][a]\)表示在 \(t\) 时,到达 \((i,j)\) ,当前共造\(a\)只"rat"的最小代价(所以相比平常的状态会多出两维) 表面上看到达一个点造的"rat"数是不固定的,实际上(在 \((t>=cnt*W[i][j])\) 的情况下,cnt越多,代价就越少),所以\(cnt=t/W[i][j]\),然后相当于两个相邻位置的代价就出来了,…
在tyvj上怀疑爆栈了.....或许一定是我写挂了.以后调吧... UPD:bzoj上过了... 题解:https://blog.csdn.net/popoqqq/article/details/39965603 po姐太神了! #include <cstdio> #include <queue> #include <cstring> #include <algorithm> using namespace std; const int N=1001001,…
两种解法: 一.树状DP /*by SilverN*/ #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<cmath> using namespace std; ; ; int hd[mxn],to[mxn],next[mxn]; int f[mxn],g[mxn],c[mxn]; int vis[mxn]; ; int n,p,e…
我们可以贪心的分析,每个点的入度如果是0,那么这个点不可能 被用来更新答案,那么我们每次找入度为0的点,将他去掉,如果他连的 点没有被更新过答案,那么更新答案,去掉该点,环的时候最后处理就行了 /**************************************************************     Problem:     User: BLADEVIL     Language: Pascal     Result: Accepted     Time: ms   …
一道基环树+树形\(DP\) 原题链接 显然输入的是内向基环树森林,且我们可以单独考虑每一棵基环树. 既然是基环树,自然先\(dfs\)找环,然后随便找环上的一点\(r\),将其与\(A[r]\)的边断开,建反边,这时就会形成一棵以\(r\)为根的树,且每个点的子节点都是能限制它的元素. 于是我们可以在这棵树上跑树形\(DP\). 定义\(f[x][0]\)表示不投放元素\(x\)的时候,以\(x\)为根的子树中能投放元素的最大值:\(f[x][1]\)表示投放元素\(x\)的时候,以\(x\)…
codevs :   传送门 Description 上帝手中有着N 种被称作“世界元素”的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界. 每种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的 世界元素能够限制它,这样上帝就可以保持对世界的控制.由于那个著名的有关于上帝能不能制造一块连自己 都不能举起的大石头的二律背反命题,我们知道上帝不是万能的,而且不但不是万能的,他甚至有事情需要找 你帮忙——上帝希望知道他最多可以投放多少种世界…
这篇随笔的灵感来源于学习源码时对type及object关系的疑惑,主要参考了这篇论文: http://www.cs.utexas.edu/~cannata/cs345/Class%20Notes/15%20Python%20Types%20and%20Objects.pdf 1.Object是什么? 计算机的工作过程概括下来就是:读取'数据', 经由'逻辑'运算,输出'结果' 数据在软件中的表示形式,是通过'键'指向存储地址,从而'引用'该地址中的值 所以'程序'在干的事,就是告诉计算机,用什么…
分析: 树形DP中的一种,基环树DP 针对每一个环跑DP,f[i],g[i]分别表示选或者不选,之后我们注意每次遍历的时候,不要重复遍历. 附上代码: #include <cstdio> #include <algorithm> #include <cmath> #include <iostream> #include <queue> #include <cstring> #include <cstdlib> using…
Description: 上帝手中有着 N 种被称作“世界元素”的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界.每 种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素能够限制它,这样上帝就可以保持对世界的控制.由于那个著名的有关于上帝能不能制造一块连自己都不能举起的大石头的二律背反命题,我们知道上帝不是万能的,而且不但不是万能的,他甚至有事情需要找你帮忙——上帝希望知道他最多可以投放多少种世界元素,但是他只会 O(2N) 级…
题目:http://www.joyoi.cn/problem/tyvj-1940 基环树的样子,看了书上的讲解,准备写树上DP,然后挂了: #include<iostream> #include<cstdio> #include<cstring> using namespace std; ,inf=1e9; ],head[MAXN],ct,s[MAXN],h,col[MAXN],cr,rt,ans; int sta[MAXN],top,reg[MAXN]; bool i…
实际上基环树DP的名字是假的.. 这个限制关系可以看成每个点有一条出边,所以就是一个内向基环树森林. 找出每个基环树的环,然后对于树的部分,做DP,设状态选或不选为$f_{x,0/1}$,则 $f_{x,0}=\sum\limits_{y\in son_x} \max\{f_{y,0},f_{y,1}\}$ $f_{x,1}=\sum\limits_{y\in son_x} \max\{f_{y,0},f_{y,1}\}+[全选了f_{y,1}?]\sum\limits_{y\in son_x}…
以后要养成写博客的习惯,用来做笔记.本人看的东西很多很杂,但因为工作中很少涉及,造成看了之后就忘,或者看了就看了,但是没有融入的自己的知识体系里面. 写博客一方面是做记录,一方面是给这段时间业余学习的一个总结. 首先贴一下我的git地址,也是这个项目的源码:https://github.com/aaja/pythonflask-movies 本项目来源慕课网. 参照这个代码 https://github.com/mtianyan/movie_project #1.项目结构创建# # 2.入口设置…
原型和原型链 看图说话: 1.对象内部具有[[Prototype]]属性,该属性不可直接访问,浏览器通过__proto__(两条'_')可以让用户读写该内部属性,最重要的是,该属性指向创建本对象的原型对象. 2.每个原型对象内部都有一个独有属性constructor,指向该原型对象的构造函数. 3.原型对象也是对象,因此它也有自己的__proto__属性,最终会指向Object.prototype 线(9)Obect.prototype对象和Function.prototype对象都是浏览器创建…
基环树DP,攻的当受的儿子,f表选,g表不选.并查集维护攻受关系.若有环则记录,DP受的后把它当祖宗,再DP攻的. #include <cstdio> #include <iostream> #include <cstring> #include <algorithm> #include <cmath> #define R(a,b,c) for(register int a = (b); (a) <= (c); ++(a)) #define…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
Python NLTK 获取文本语料和词汇资源 作者:白宁超 2016年11月7日13:15:24 摘要:NLTK是由宾夕法尼亚大学计算机和信息科学使用python语言实现的一种自然语言工具包,其收集的大量公开数据集.模型上提供了全面.易用的接口,涵盖了分词.词性标注(Part-Of-Speech tag, POS-tag).命名实体识别(Named Entity Recognition, NER).句法分析(Syntactic Parse)等各项 NLP 领域的功能.本文主要介绍NLTK(Na…
题目大意: applepi手里有一本书<创世纪>,里面记录了这样一个故事--上帝手中有着N 种被称作"世界元素"的东西,现在他要把它们中的一部分投放到一个新的空间中去以建造世界.每种世界元素都可以限制另外一种世界元素,所以说上帝希望所有被投放的世界元素都有至少一个没有被投放的世界元素能够限制它,这样上帝就可以保持对世界的控制.由于那个著名的有关于上帝能不能制造一块连自己都不能举起的大石头的二律背反命题,我们知道上帝不是万能的,而且不但不是万能的,他甚至有事情需要找你帮忙--…
前言 网购已经不再是现在的时髦,而变成了我们每天的日常生活.上网已经和买买买紧密地联系在了一起,成为了我们的人生信条.而逛街一词,越来越多地变成了一种情怀.有时候我们去逛街,要么是为了打发时间,要么是想亲手摸摸商品本身,要么就是想看看不同的商品,放在眼前或者在脑海里比较一下.毕竟现在网上琳琅满目的商品让人眼花缭乱,一次展示一个,看完这个,忘了上一个:看完了最后一个,已经没有力气再打开长长的历史列表一个一个看回去.如果没有石猴的火眼金睛,如何万里挑一,找到自己中意的那个‘它’呢?毕竟我们大多数人,…
Gson是谷歌用于对Json操作的库,里面有着强大而又方便的功能,最常用的就是 fromJson():将json数据转化为对象: toJson():将对象转化为json数据! 对于普通的json数据使用这两个方法简直so easy,但是对于稍有点复杂的json数据如何操作呢? 比如json数据中除了json对象外,还有json数组, 有点抽象,来个例子: 比如想通过对象生成一下json数据: { "age": "21", "mList": [ {…
在分析bind机制之前,我发现已经有一篇文章讲解的非常清晰,并且提出了很多问题. 地址:http://my.oschina.net/keeponmoving/blog/64218 一.Linux系统进程间通信有哪些方式?     1.socket: 2.name pipe命名管道: 3.message queue消息队列: 4.singal信号量: 5.share memory共享内存: 二.Java系统的通信方式是什么? 1.socket; 2.name pipe; 三.Android系统通信…