麦香牛块洛谷传送门麦香牛块USACO传送门篱笆回路洛谷传送门篱笆回路USACO传送门

洛谷 2737 麦香牛块

分析

首先如果包装总GCD不为1,显然没有上界

然后这个答案如果存在必然满足在一个范围内,

可以推结论得到上界为\(max*(max-1)\)(好像是反证法)

然后就可以用完全背包求解啦,

但是为了推广\(\text{STL::bitset}O(\frac{n*maxlogLIMIT}{32})\)的做法

所以我就写了跑得更慢的做法T^T


代码

/*
ID:lemondi1
LANG:C++
TASK:nuggets
*/
#include <cstdio>
#include <algorithm>
#include <bitset>
#define rr register
using namespace std;
const int N=65300;
bitset<N>dp; int n,a[11],G,ans,lim;
inline signed gcd(int a,int b){return b?gcd(b,a%b):a;}
signed main(){
freopen("nuggets.in","r",stdin);
freopen("nuggets.out","w",stdout);
scanf("%d",&n);
for (rr int i=1;i<=n;++i){
scanf("%d",&a[i]);
G=gcd(G,a[i]);
}
if (G!=1) return !printf("0\n");
dp[0]=1,sort(a+1,a+1+n),lim=a[n]*(a[n]-1);
for (rr int i=1;i<=n;++i)
for (rr int j=a[i];j<=lim;j<<=1)
dp|=dp<<j;
dp[0]=0;
for (rr int i=a[n]*(a[n]-1);~i;--i)
if (!dp[i]) return !printf("%d\n",i);
}

洛谷 2738 篱笆回路

分析

显然是求最小环,数据小用\(\text{FLOYD}\)解决

但是建图是关键,考虑用哈希存下某篱笆某一边所有可连的篱笆(包括它自己)

这样就可以加点了


代码

/*
ID:lemondi1
LANG:C++
TASK:fence6
*/
#include <cstdio>
#include <cctype>
#include <algorithm>
#include <cstring>
#include <map>
#define rr register
using namespace std;
typedef unsigned uit; map<uit,int>uk;
int d[101][101],dis[101][101],n,ans,a[11];
inline signed iut(){
rr int ans=0; rr char c=getchar();
while (!isdigit(c)) c=getchar();
while (isdigit(c)) ans=(ans<<3)+(ans<<1)+(c^48),c=getchar();
return ans;
}
signed main(){
freopen("fence6.in","r",stdin);
freopen("fence6.out","w",stdout);
memset(dis,42,sizeof(dis)),
memset(d,42,sizeof(d)),ans=d[0][0];
for (rr int Test=iut();Test;--Test){
rr int Num=iut(),Len=iut(),X[2];
rr int nn[2]={iut(),iut()},Tot;
for (rr int j=0;j<2;++j){
a[Tot=1]=Num;
for (;nn[j];--nn[j])
a[++Tot]=iut();
sort(a+1,a+1+Tot);
rr uit h=a[1];
for (rr int i=2;i<=Tot;++i)
h=h*137+a[i];
if (!uk[h]) uk[h]=++n;
X[j]=uk[h];
}
dis[X[0]][X[1]]=d[X[0]][X[1]]=Len;
dis[X[1]][X[0]]=d[X[1]][X[0]]=Len;
}
for (rr int k=1;k<=n;++k){
for (rr int i=1;i<k-1;++i)
for (rr int j=i+1;j<k;++j)
ans=min(ans,dis[i][j]+d[i][k]+d[j][k]);
for (rr int i=1;i<=n;++i)
for (rr int j=1;j<=n;++j)
dis[i][j]=min(dis[i][j],dis[i][k]+dis[k][j]);
}
return !printf("%d\n",ans);
}

USACO 4.1的更多相关文章

  1. USACO . Your Ride Is Here

    Your Ride Is Here It is a well-known fact that behind every good comet is a UFO. These UFOs often co ...

  2. 【USACO 3.1】Stamps (完全背包)

    题意:给你n种价值不同的邮票,最大的不超过10000元,一次最多贴k张,求1到多少都能被表示出来?n≤50,k≤200. 题解:dp[i]表示i元最少可以用几张邮票表示,那么对于价值a的邮票,可以推出 ...

  3. USACO翻译:USACO 2013 NOV Silver三题

    USACO 2013 NOV SILVER 一.题目概览 中文题目名称 未有的奶牛 拥挤的奶牛 弹簧牛 英文题目名称 nocow crowded pogocow 可执行文件名 nocow crowde ...

  4. USACO翻译:USACO 2013 DEC Silver三题

    USACO 2013 DEC SILVER 一.题目概览 中文题目名称 挤奶调度 农场航线 贝西洗牌 英文题目名称 msched vacation shuffle 可执行文件名 msched vaca ...

  5. USACO翻译:USACO 2014 DEC Silver三题

    USACO 2014 DEC SILVER 一.题目概览 中文题目名称 回程 马拉松 奶牛慢跑 英文题目名称 piggyback marathon cowjog 可执行文件名 piggyback ma ...

  6. USACO翻译:USACO 2012 FEB Silver三题

    USACO 2012 FEB SILVER 一.题目概览 中文题目名称 矩形草地 奶牛IDs 搬家 英文题目名称 planting cowids relocate 可执行文件名 planting co ...

  7. USACO翻译:USACO 2012 JAN三题(3)

    USACO 2012JAN(题目三) 一.题目概览 中文题目名称 放牧 登山 奶牛排队 英文题目名称 grazing climb lineup 可执行文件名 grazing climb lineup ...

  8. USACO翻译:USACO 2012 JAN三题(2)

    USACO 2012 JAN(题目二) 一.题目概览 中文题目名称 叠干草 分干草 奶牛联盟 英文题目名称 stacking baleshare cowrun 可执行文件名 stacking bale ...

  9. USACO翻译:USACO 2012 JAN三题(1)

    USACO 2012 JAN(题目一) 一.题目概览 中文题目名称 礼物 配送路线 游戏组合技 英文题目名称 gifts delivery combos 可执行文件名 gifts delivery c ...

  10. USACO翻译:USACO 2013 JAN三题(1)

    USACO 2013 JAN 一.题目概览 中文题目名称 镜子 栅栏油漆 奶牛排队 英文题目名称 mirrors paint lineup 可执行文件名 mirrors paint lineup 输入 ...

随机推荐

  1. InSAR处理软件——Gamma 安装教程

    Gamma是由瑞士 GAMMA Remote Sensing 公司开发SAR数据处理软件,支持SAR数据全流程处理,是最InSAR最常用的软件.下面介绍该软件的安装流程,安装环境为Ubuntu16.0 ...

  2. https://editor.csdn.net/md/?articleId=131348876

    前言   前面搭建了基础环境,在使用统信UOS系统的相关行业也是不能上网的,但是可以传递压缩包,为了很好的方便相关从业人员工作,特将此种方式流程分享出来.(与国产银河麒麟不同)  本篇文章的重点就是离 ...

  3. Java面向对象之接口和抽象类的区别一目了然

    介绍 相信对于Java面向对象部分,很多人很长一段时间对于接口和抽象类的区别,使用场景都不是很熟悉,同是作为抽象层重要的对象,工作中到底什么情况下使用抽象类,不是很清楚.本文就一次性把这些概念一次性说 ...

  4. DataGear 制作全国和省级地图联动的数据可视化看板

    DataGear看板的图表联动功能,使您可以轻松制作支持图表联动的全国地图.省级地图数据可视化看板. 首先,新建两个数据集. 第一个是各省指标数据集,将用于绘制全国指标图表,它的SQL语句如下所示: ...

  5. 【Azure Key Vault】在Alteryx中使用Azure Key Vault存储账号和密码并实现无交互登录

    问题描述: 需要在Alteryx中使用Azure Key Vault, Alteryx 能将数据发布到 Tableau,需要输入账号和密码,使用Azure Key Vault来替换这个输入账号和密码的 ...

  6. 苏宁基于 AI 和图技术的智能监控体系的建设

    汤泳,苏宁科技集团智能监控与运维产研中心总监,中国商业联合会智库顾问,致力于海量数据分析.基于深度学习的时间序列分析与预测.自然语言处理和图神经网络的研究.在应用实践中,通过基于 AI 的方式不断完善 ...

  7. stm32f103ve+光电传感器使用教程+oled(HAL库)

    最近想做一个物联网农业监控系统,第一步就是能够学会使用相关的外设,比如温湿度检测,光照强度检测,还有CO2检测等. 这次讲一下光电传感器的使用和代码实现. 1.知识储备:串口使用,ADC采集(此处用的 ...

  8. 11 .Codeforces Round 891 (Div. 3)E. Power of Points(推公式+前缀和优化)

    E. Power of Points 题解参考 #include <bits/stdc++.h> #define int long long #define rep(i, a, b) fo ...

  9. 学习ASP.NET Core Razor 编程系列文章目录

    学习ASP.NET Core Razor 编程系列一 学习ASP.NET Core Razor 编程系列二--添加一个实体 学习ASP.NET Core Razor 编程系列三--创建数据表及创建项目 ...

  10. Lock wait timeout exceeded; try restarting transaction-Mysql报错

    一.问题由来 现在在做一个小程序的后台,使用Java写的,数据库使用的Mysql,之前一直调试的时候都好好的,今天在调试的时候突然就报一个错: ### Error updating database. ...