luogu 2371 墨墨的等式
1.背包dp
#include<bits/stdc++.h>
#define rep(i,x,y) for(register int i=x;i<=y;i++)
#define ll long long
using namespace std;
const int N=;
const int M=1e6+;
int a[N],n,bmin,bmax;
inline int read(){
int x=,f=;char ch=getchar();
while(!isdigit(ch)){if(ch=='-')f=-;ch=getchar();}
while(isdigit(ch)){x=(x<<)+(x<<)+(ch^);ch=getchar();}
return x*f;}
ll f[M];int ans;
int main(){
scanf("%d%d%d",&n,&bmin,&bmax);
rep(i,,n) a[i]=read();
for(int i=;i<=n;i++)
for(int j=a[i];j<=bmax;j++)
f[j]=max(f[j],f[j-a[i]]+a[i]); for(int i=bmin;i<=bmax;i++)if(f[i]==i) ++ans;
printf("%d\n",ans);return ;
}
2.最短路 啊啊啊搬了别人的代码,以后自己再写吧
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<queue>
#include<cstring>
#define ll long long
#define INF 0x3f3f3f3f3f3f3f3f
#define N 500100
using namespace std; ll n,l,r,num[],d[N],ans;
bool in[N];
queue<ll>que; int main()
{
ll i,j,p,q;
cin>>n>>l>>r;
for(i=; i<=n; i++)
{
scanf("%lld",&num[i]);
}
sort(num+,num+n+);
memset(d,0x3f,sizeof(d));
d[]=;
que.push();
for(; !que.empty();)
{
p=que.front();
que.pop();
in[p]=;
for(i=; i<=n; i++)
{
q=(p+num[i])%num[];
if(d[q]<=d[p]+num[i]) continue;
d[q]=d[p]+num[i];
if(!in[q])
{
in[q]=;
que.push(q);
}
}
}
for(i=,l--; i<num[]; i++)
{
if(d[i]>r) continue;
if(d[i]<=l) ans+=(r-i)/num[]-(l-i)/num[];
else ans+=(r-d[i])/num[]+;
}
cout<<ans;
}
luogu 2371 墨墨的等式的更多相关文章
- 【同余最短路】【例题集合】洛谷P3403 跳楼机/P2371 墨墨的等式
接触到的新内容,[同余最短路]. 代码很好写,但思路不好理解. 同余最短路,并不是用同余来跑最短路,而是通过同余来构造某些状态,从而达到优化时间空间复杂度的目的.往往这些状态就是最短路中的点,可以类比 ...
- BZOJ2118墨墨的等式[数论 最短路建模]
2118: 墨墨的等式 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 1317 Solved: 504[Submit][Status][Discus ...
- Bzoj2118 墨墨的等式
Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 1488 Solved: 578 Description 墨墨突然对等式很感兴趣,他正在研究a1x1+ ...
- 数论+spfa算法 bzoj 2118 墨墨的等式
2118: 墨墨的等式 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 1283 Solved: 496 Description 墨墨突然对等式很感兴 ...
- bzoj 2118: 墨墨的等式
Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+-+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...
- bzoj 2118 墨墨的等式 - 图论最短路建模
墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在非负整数解. Input ...
- 【BZOJ2118】墨墨的等式(最短路)
[BZOJ2118]墨墨的等式(最短路) 题面 BZOJ 洛谷 题解 和跳楼机那题是一样的. 只不过走的方式从\(3\)种变成了\(n\)种而已,其他的根本没有区别了. #include<ios ...
- 【BZOJ2118】墨墨的等式 最短路
[BZOJ2118]墨墨的等式 Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值 ...
- BZOJ2118: 墨墨的等式(同余类BFS)(数学转为图论题)
2118: 墨墨的等式 Time Limit: 10 Sec Memory Limit: 259 MBSubmit: 2944 Solved: 1206[Submit][Status][Discu ...
- BZOJ2118:墨墨的等式(最短路)
Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...
随机推荐
- 数据库设计E-R图
项目数据库的设计主要划分为以下6个阶段,本篇主要着重来介绍概念设计阶段 A.系统需求分析阶段B.概念结构设计阶段C.逻辑结构设计阶段D.物理结构设计阶段E.数据库实施阶段F.数据库运行与维护阶段 E- ...
- Rocket.Chat 开源IM系统部署
Rocket.Chat 官方给出的文档也个人觉得太麻烦了,并且对ubuntu的支持程度远高于CentOS,自己就折腾写了个安装的笔记,如果是在公司内部或者是部门内部还是很有用处的,比较看中的功能有和g ...
- hdu 3294 Girls' research(manacher)
Problem Description One day, sailormoon girls are so delighted that they intend to research about pa ...
- 【洛谷P2585】三色二叉树
题目大意:给定一个二叉树,可以染红绿黄三种颜色,要求父节点和子节点的颜色不同,且如果一个节点有两个子节点,那么两个子节点之间的颜色也不同.求最多和最少有多少个节点会被染成绿色. 题解:加深了对二叉树的 ...
- io系列之字节流
java中io流系统庞大,知识点众多,作为小白通过五天的视频书籍学习后,总结了io系列的随笔,以便将来复习查看. 本篇为此系列随笔的第一篇:io系列之字节流. 一.字节流的File读写操作. Inpu ...
- C++ template一些体悟(3)
其实没啥体悟,因为还没有感受到这些例子的作用,记一下先 #include <iostream> using namespace std; class alloc { }; template ...
- CSUST 1011 神秘群岛 (Dijkstra+LCA)
神秘群岛 Description 小J继续着周游世界的旅程,这次他来到了一个神奇的群岛.这片群岛有n个岛屿,同时这些岛屿被标上了1-n的编号. 每个岛屿上面都有神奇的传送门,传送门可以把小J从当前 ...
- php如何判断数组是一维还是多维
php>4.2 int count ( mixed $var [, int $mode ] ) -- 计算数组中的单元数目或对象中的属性个数 如果可选的 mode 参数设为 COUNT_R ...
- 关于 C# 中 Dictionary与Hashtable的性能测试
https://www.cnblogs.com/qianxingdewoniu/p/5266243.html
- 互联网运营+SEO:推荐必看的5本书籍
本文首发于:风云社区(scoee.com) 最近开始学习和研究互联网运营和SEO,对于我这个小白来讲,还是有些吃力,毕竟从来没接触这方面的,尽管在之前的软件公司做过售前和产品相关的工作,但毕竟与互联网 ...