-------------------------------------------------------------------- #include<cstdio> #include<algorithm> #include<iostream> #include<cstring>   #define rep( i , n ) for( int i = 0 ; i < n ; ++i ) #define clr( x , c ) memset( x…
题面:P2925 [USACO08DEC]干草出售Hay For Sale 题解:无 代码: #include<cstdio> #include<cstring> #include<iostream> using namespace std; ,maxh=; int C,H,V[maxh]; bool F[maxc]; int main(){ scanf("%d%d",&C,&H); ;i<=H;i++)scanf("…
Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? Input     第1行输入C和H,之后H行一行输入一个Vi. Output       最多的可买干草体积. Sample Input 7 3 //总体积为7,用3个物品来背包 2 6 5 The…
http://www.lydsy.com/JudgeOnline/problem.php?id=1606 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1420  Solved: 1052[Submit][Status][Discuss] Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都…
裸的背包= =,没什么好说的= = CODE: #include<cstdio>#include<iostream>#include<algorithm>#include<cstring>using namespace std;int n,m,f[50010],x;int main(){ scanf("%d%d",&n,&m); for (int i=1;i<=m;i++) {  scanf("%d&quo…
在洛谷上被卡常了一个点! 就是裸的01背包咯 为啥我在刷水题啊 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int N=50005; int c,h,a[N],f[N]; int main() { scanf("%d%d",&c,&h); for(int i=1;i<=h;i++) scanf("%…
Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? Input     第1行输入C和H,之后H行一行输入一个Vi. Output       最多的可买干草体积. Sample Input 7 3 //总体积为7,用3个物品来背包 2 6 5 The…
Description 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? Input     第1行输入C和H,之后H行一行输入一个Vi. Output     最多的可买干草体积. Sample Input 7 3 //总体积为7,用3个物品来背包 2 6 5 The wagon…
1606: [Usaco2008 Dec]Hay For Sale 购买干草 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 612  Solved: 463[Submit][Status] Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买,…
1606: [Usaco2008 Dec]Hay For Sale 购买干草 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1338  Solved: 991[Submit][Status][Discuss] Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C)…
1606: [Usaco2008 Dec]Hay For Sale 购买干草 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 1240  Solved: 920[Submit][Status][Discuss] Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C)…
Hay For Sale 购买干草 bzoj-1606 Usaco-2008 Dec 题目大意:约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买,他最多可以运回多少体积的干草呢? 想法:傻逼背包裸题,直接01背包即可. 最后,附上丑陋的代码... ... #include <iostream> #include &…
Description     约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? Input     第1行输入C和H,之后H行一行输入一个Vi. Output       最多的可买干草体积. Sample Input 7 3  //总体积为7,用3个物品来背包 2 6 5 Th…
Description 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草. 顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买,他最多可以运回多少体积的干草呢? Input 第1行输入C和H,之后H行一行输入一个Vi. Output 最多的可买干草体积. Sample Input 7 3 //总体积为7,用3个物品来背包 2 6 5 The wagon holds 7 v…
题目描述 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? 输入 第1行输入C和H,之后H行一行输入一个Vi. 输出 最多的可买干草体积. 样例输入 7 3 2 6 5 样例输出 7 题解 01背包水题,同"装箱问题". #include <cstdio> ]…
题目描述 约翰遭受了重大的损失:蟑螂吃掉了他所有的干草,留下一群饥饿的牛.他乘着容量为C(1≤C≤50000)个单位的马车,去顿因家买一些干草.  顿因有H(1≤H≤5000)包干草,每一包都有它的体积Vi(l≤Vi≤C).约翰只能整包购买, 他最多可以运回多少体积的干草呢? 输入 第1行输入C和H,之后H行一行输入一个Vi. 输出 最多的可买干草体积. 样例输入 7 3 2 6 5 样例输出 7 题解 01背包水题,同“装箱问题”. #include <cstdio> int f[50001…
http://www.lydsy.com/JudgeOnline/problem.php?id=1606 越来越水了T_T 这题两种做法,一个正规01背包,价值就是体积 还有一种是非正规背包,即 if(f[j-v[i]]) f[j]=1 然后从大向小扫出第一个f[i]==1的,i就是答案 越来越水了啊.. #include <cstdio> #include <cstring> #include <cmath> #include <string> #incl…
无限背包dp.. 因为题目中说至少到 H 磅 , 我就直接把 H * 2 了.. -------------------------------------------------------------------------- #include<cstdio> #include<algorithm> #include<cstring> #include<iostream>   #define rep( i , n ) for( int i = 0 ; i…
1607: [Usaco2008 Dec]Patting Heads 轻拍牛头 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=1607 Description   今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏.     贝茜让N(1≤N≤100000)头奶牛坐成一个圈.除了1号与N号奶牛外,i号奶牛与i-l号和i+l号奶牛相邻.N号奶牛与1号奶…
1607: [Usaco2008 Dec]Patting Heads 轻拍牛头 Description   今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏.     贝茜让N(1≤N≤100000)头奶牛坐成一个圈.除了1号与N号奶牛外,i号奶牛与i-l号和i+l号奶牛相邻.N号奶牛与1号奶牛相邻.农夫约翰用很多纸条装满了一个桶,每一张包含了一个独一无二的1到1,000,000的数字.     接着每一头奶牛i从柄中取出一张纸条Ai.每头奶牛轮流走上一圈,同时拍打所有编号能整除在纸条…
1590: [Usaco2008 Dec]Secret Message 秘密信息 Description     贝茜正在领导奶牛们逃跑.为了联络,奶牛们互相发送秘密信息.     信息是二进制的,共有M(1≤M≤50000)条.反间谍能力很强的约翰已经部分拦截了这些信息,知道了第i条二进制信息的前bi(l<bi≤10000)位.他同时知道,奶牛使用N(1≤N≤50000)条密码.但是,他仅仅了解第J条密码的前cj(1≤cj≤10000)位.     对于每条密码J,他想知道有多少截得的信息能够…
Description 每年万圣节,威斯康星的奶牛们都要打扮一番,出门在农场的N(1≤N≤100000)个牛棚里转悠,来采集糖果.她们每走到一个未曾经过的牛棚,就会采集这个棚里的1颗糖果. 农场不大,所以约翰要想尽法子让奶牛们得到快乐.他给每一个牛棚设置了一个"后继牛棚".牛棚i的后继牛棚是Xi.他告诉奶牛们,她们到了一个牛棚之后,只要再往后继牛棚走去,就可以搜集到很多糖果.事实上这是一种有点欺骗意味的手段,来节约他的糖果.  第i只奶牛从牛棚i开始她的旅程.请你计算,每一只奶牛可以采…
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1607 #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; ,M=1e6+; int n,a[N],c[M],mx,ans[M]; int rdn() { ;;char ch=getchar(); ;ch=getcha…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1607 题意: 给你n个数,问你除a[i]之外,有多少个数是a[i]的约数. 题解: ans[i]表示这n个数中有多少个数是i的约数. 对于a[i],它对它倍数的答案有贡献:ans[a[i]*k]++ 为了提高效率,可以先合并相同的a[i]. cnt[i]代表值为i的数字有多少个. 所以变为:ans[i*k]+=cnt[i] 枚举每个数的倍数的总复杂度为O(nlogn)(调和级数). 最后…
http://www.lydsy.com/JudgeOnline/problem.php?id=1607 Time Limit: 3 Sec  Memory Limit: 64 MBSubmit: 2795  Solved: 1438[Submit][Status][Discuss] Description   今天是贝茜的生日,为了庆祝自己的生日,贝茜邀你来玩一个游戏.     贝茜让N(1≤N≤100000)头奶牛坐成一个圈.除了1号与N号奶牛外,i号奶牛与i-l号和i+l号奶牛相邻.N号奶…
某种意义上真毒瘤?我没看懂题啊...于是看了题解 就是筛约数的那种方法,复杂度调和级数保证O(nlogn) 所以这题啥意思啊 #include<iostream> #include<cstdio> #include<algorithm> using namespace std; const int N=1000005; int n,mx,a[N],c[N],d[N]; int read() { int r=0,f=1; char p=getchar(); while(p…
对这个奇形怪状的图tarjan,然后重新连边把图变成DAG,然后记忆化搜索即可 #include<iostream> #include<cstdio> using namespace std; const int N=100005; int n,a[N],h[N],cnt,dfn[N],low[N],tot,s[N],top,bl[N],si[N],col,mp[N]; bool v[N]; struct qwe { int ne,to; }e[N]; int read() { i…
一道水 dp ...然后我一开始用 BFS ...结果 MLE 了... dp[ i ][ j ][ k ] 由它四个方向上的 k - 1 转移. ----------------------------------------------------------------------------------------------- #include<cstdio> #include<algorithm> #include<cstring> #include<…
最优的做法最后路面的高度一定是原来某一路面的高度. dp(x, t) = min{ dp(x - 1, k) } + | H[x] - h(t) | ( 1 <= k <= t ) 表示前 i 个路面单调不递减, 第 x 个路面修整为原来的第 t 高的高度. 时间复杂度O( n³ ). 令g(x, t) = min{ dp(x, k) } (1 <= k <= t), 则转移O(1), g() 只需在dp过程中O(1)递推即可, 总时间复杂度为O( n² ) 然后单调不递增也跑一遍…
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=2101 题意: 共有n枚金币,第i枚金币的价值是w[i]. 把金币排成一条直线,Bessie和Bonny轮流取金币,看谁取到的钱最多. Bessie先取,每次只能取一枚金币,而且只能选择取直线两头的金币,不能取走中间的金币.当所有金币取完之后,游戏就结束了. Bessie和Bonny都是非常聪明的,她们会采用最好的办法让自己取到的金币最多. 请帮助Bessie计算一下,她能拿到多少钱? 题…