食物(bzoj 3280)】的更多相关文章

Description 明明这次又要出去旅游了,和上次不同的是,他这次要去宇宙探险! 我们暂且不讨论他有多么NC,他又幻想了他应该带一些什么东西.理所当然的,你当然要帮他计算携带N件物品的方案数. 他这次又准备带一些受欢迎的食物,如:蜜桃多啦,鸡块啦,承德汉堡等等 当然,他又有一些稀奇古怪的限制: 每种食物的限制如下:        承德汉堡:偶数个        可乐:0个或1个             鸡腿:0个,1个或2个             蜜桃多:奇数个             鸡…
3280: 小R的烦恼 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 399  Solved: 200[Submit][Status][Discuss] Description 小R最近遇上了大麻烦,他的程序设计挂科了.于是他只好找程设老师求情.善良的程设老师答应不挂他,但是要求小R帮助他一起解决一个难题. 问题是这样的,程设老师最近要进行一项邪恶的实验来证明P=NP,这个实验一共持续n天,第i天需要a[i]个研究生来给他搬砖.研究生毕竟也是人,…
思路: 同BZOJ 1221 //By SiriusRen #include <queue> #include <cstdio> #include <cstring> #include <algorithm> using namespace std; #define mem(x,y) memset(x,y,sizeof(x)) #define N 666666 #define inf 0x3f3f3f3f int cases,n,m,k,ed,cost[N]…
和开发计划一样(数组开太小wa了好多次,然后为什么这么慢? type arr=record toward,next,cap,cost:longint; end; const maxm=; maxn=; var edge:..maxm]of arr; dist,first,sch,a,new,old,p,slack:..maxn]of longint; chose:..maxn]of boolean; maxcost,maxflow,n,s,t,tot,esum,i,tt,sum,jj:longi…
题目链接 戳我 \(Solution\) 这道题很像餐巾计划啊. 首先将每天拆成\(x\)和\(x'\),\(S->x\)流量为\(a_i\),费用为\(0\)表示一天下来有\(a_i\)个濒死的人, 再将\(x'->T\)流量为\(a_i\)表示一天需要有\(a_i\)个人 对于每个学校新建一个节点,将\(S\)和他相连流量为\(l_i\),在将这个节点和\(x'\)相连流量为\(inf\),费用为\(p_i\)表示每天可以在学校中选人 然后在将\(x\)连向\(x+1\),流量为\(inf…
题目: Description 小R最近遇上了大麻烦,他的程序设计挂科了.于是他只好找程设老师求情.善良的程设老师答应不挂他,但是要求小R帮助他一起解决一个难题. 问题是这样的,程设老师最近要进行一项邪恶的实验来证明P=NP,这个实验一共持续n天,第i天需要a[i]个研究生来给他搬砖.研究生毕竟也是人,所以雇佣研究生是需要钱的,机智的程设老师已经联系好了m所大学,第j所大学共有l[j]个研究生,同时雇佣这所大学的一个研究生需要p[j]元钱. 本来程设老师满心欢喜的以为,这样捡最便宜的max{a[…
Description 小R最近遇上了大麻烦,他的程序设计挂科了.于是他只好找程设老师求情.善良的程设老师答应不挂他,但是要 求小R帮助他一起解决一个难题.问题是这样的,程设老师最近要进行一项邪恶的实验来证明P=NP,这个实验一共 持续n天,第i天需要a[i]个研究生来给他搬砖.研究生毕竟也是人,所以雇佣研究生是需要钱的,机智的程设老师 已经联系好了m所大学,第j所大学共有l[j]个研究生,同时雇佣这所大学的一个研究生需要p[j]元钱.本来程设老 师满心欢喜的以为,这样捡最便宜的max{a[i]…
网络流/费用流 和软件开发那题基本相同,只是多加了一个“雇佣研究生”的限制:不同价格的研究生有不同的数量…… 那么只需加一个附加源点,对每一种研究生连边 S->ss 容量为l[i],费用为p[i]:再改由附加源点向每天的流入点(i+n)连边即可. /************************************************************** Problem: 3280 User: Tunix Language: C++ Result: Accepted Time:…
题面:BZOJ传送门 题目让我们求这些物品在合法范围内任意组合,一共组合出$n$个物品的方案数 考虑把每种食物都用生成函数表示出来,然后用多项式乘法把它们乘起来,第$n$项的系数就是方案数 汉堡:$1+x^{2}+x^{4}+x^{4}...=\frac{1}{1-x^{2}}$ 可乐:$1+x$ 鸡腿:$1+x+x^{2}$ 蜜桃:$x+x^{3}+x^{5}+x^{7}...=\frac{x}{1-x^{2}}$ 鸡块:$1+x^{4}+x^{8}+x^{12}..=\frac{1}{1-x…
http://www.lydsy.com/JudgeOnline/problem.php?id=3028 题意: 每种食物的限制如下:汉堡:偶数个:可乐:0个或1个鸡腿:0个,1个或2个蜜桃:奇数个鸡块:4的倍数个包子:0个,1个,2个或3个土豆:不超过一个.面包:3的倍数个 问带$n$个物品的方案数(n<=10^500) #include <bits/stdc++.h> using namespace std; int main() { int n=0; char c; while(c…