vijos p1071新年趣事之打牌】的更多相关文章

描述 过年的时候,大人们最喜欢的活动,就是打牌了.xiaomengxian不会打牌,只好坐在一边看着. 这天,正当一群人打牌打得起劲的时候,突然有人喊道:“这副牌少了几张!”众人一数,果然是少了.于是这副牌的主人得意地说:“这是一幅特制的牌,我知道整副牌每一张的重量.只要我们称一下剩下的牌的总重量,就能知道少了哪些牌了.”大家都觉得这个办法不错,于是称出剩下的牌的总重量,开始计算少了哪些牌.由于数据量比较大,过了不久,大家都算得头晕了. 这时,xiaomengxian大声说:“你们看我的吧!”于…
vijosP1071 新年趣事之打牌 链接:https://vijos.org/p/1071 [思路] 01背包+路径输出. 用d[][]记录[][]可转移的数目,>=2则输出-1,0输出0,否则输出路径.对于路径可以写一个递归过程print完成. 本题的数据着实有些坑,需要注意的有数组的范围,使用LL.题目中为什么没有交待? [代码] #include<iostream> #include<cstring> using namespace std; +; typedef l…
简单的01背包 保存下方案总数 其实就是dp[v]值 输出路径dfs一下 #include <iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<stdlib.h> using namespace std; ],w[],path[],o,f[],n; void dfs(int sw,int v) { int j; ) { o = v; return ;…
描述 xiaomengxian一进门,发现外公.外婆.叔叔.阿姨……都坐在客厅里等着他呢.经过仔细观察,xiaomengxian发现他们所有人正好组成了一个凸多边形.最重要的是,他们每个人手里都拿着一个红包(^o^).于是非常心急,xiaomengxian决定找一条最短的路线,拿到所有的红包. 假设屋里共有N个人拿着红包,把他们分别从1到N编号.其中,编号为1的人就坐在大门口,xiaomengxian必须从这里出发去拿其它的红包.一条合法的路线必须经过所有的点一次且仅一次. 格式 输入格式 第一…
目录 题目描述 输入 输出 思路 新年趣事之红包 时间限制: 1 Sec  内存限制: 64 MB 题目描述 xiaomengxian一进门,发现外公.外婆.叔叔.阿姨--都坐在客厅里等着他呢.经过仔细观察,xiaomengxian发现他们所有人正好组成了一个凸多边形.最重要的是,他们每个人手里都拿着一个红包(^o^).于是非常心急,xiaomengxian决定找一条最短的路线,拿到所有的红包. 假设屋里共有N个人拿着红包,把他们分别从1到N编号.其中,编号为1的人就坐在大门口,xiaomeng…
传送门 题目大意: 求原图的最小生成树,和次小生成树. 题目分析: kruskals求mst(\(O(mlogm)\)) 考虑次小生成树暴力的做法,因为次小生成树总是由最小生成树删掉一条边并添加一条边得到的,所以可以枚举最小生成树上的每一条边删去,再重新求一遍mst.(\(O(m^2logm)\)) 下面的题解来自转载:(\(O(n^2(求最大权值) + mlogm(求最小生成树) + m(求次小))\)) code #include<bits/stdc++.h> using namespac…
[SinGuLaRiTy-1026] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. [UVA 1025] A Spy in the Metro 题目描述 特工玛利亚被送到S市执行一个特别危险的任务.她需要利用地铁完成他的任务,S市的地铁只有一条线路运行,所以并不复杂. 玛利亚有一个任务,现在的时间为0,她要从第一个站出发,并在最后一站的间谍碰头.玛利亚知道有一个强大的组织正在追踪她,她知道如果一直呆在一个车站,她会有很大的被抓的风险,躲…
1025: [SCOI2009]游戏 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1065  Solved: 673[Submit][Status] Description windy学会了一种游戏.对于1到N这N个数字,都有唯一且不同的1到N的数字与之对应.最开始windy把数字按顺序1,2,3,……,N写一排在纸上.然后再在这一排下面写上它们对应的数字.然后又在新的一排下面写上它们对应的数字.如此反复,直到序列再次变为1,2,3,……,N.…
「JOI 2015 Final」分蛋糕 2 题解 这道题让我想起了新年趣事之红包这道DP题,这道题和那道题推出来之后的做法是一样的. 我们可以定义dp[i][len][1] 表示从第i块逆时针数len块的一个扇形,JOI先拿,JOI的所得. dp[i][len][0] 表示从第i块逆时针数len块的一个扇形,IOI先拿,JOI的所得. 我们发现,dp[......][len][......]可以从dp[......][len - 1][......]转移过来,所以考虑先len 从小到大枚起. 详…
非常奇怪的是,我在Vijos 1071能AC,在caioj 就只有50分 可以和前面一道题一样算方案,如果大于1就是多解 然后就输出方案就好了 #include<cstdio> #include<cstring> #define REP(i, a, b) for(int i = (a); i < (b); i++) using namespace std; const int MAXN = 112; const int MAXM = 212345; int w[MAXN],…