10/30的update:如果是冲着dijk的板子来的,建议看多校联考contest中第二场day2的T2,那边的写法比较优秀。。。

--------------------------------------------

编译器真是神经了  k=k*2打成了k*2居然都不报错  还一点事情没有

害我改一晚上

一开始忘记了c++的数组默认从0开始

后来又把dijk写T了。。。。。重申一遍,这里是先把所有点加进去然后依次pop()

至于这道题,大家都说它是一道数论好题

而狗王一定要把它当作spfa专题来讲给小朋友们听

---erh。。。

网上题解有很多 首推po姐的

#include<cstdio>
#define ll long long
#define inf 1<<29
#include<algorithm>
#include<iostream>
#define N 500100
#include<cstring>
using namespace std;
int n,q[N],pos[N];ll a[N],f[N];ll bmin,bmax;
int top;
void push_up(int kk)
{
  int k=kk;
  >&&f[q[k]]<f[q[k/]])
  {
    pos[q[k]]=k/;pos[q[k/]]=k;
    swap(q[k],q[k/]);
    k/=;
  }
}
void push_down()
{
  ;
  <=top)
  {
    +<=top&&f[q[k]]>f[q[k*+]]&&f[q[k*+]]<f[q[k*]])
    {
      pos[q[k]]=k*+;pos[q[k*+]]=k;
      swap(q[k],q[k*+]);
      k=k*+;
    }]])
    {
       pos[q[k]]=k*;pos[q[k*]]=k;
       swap(q[k],q[k*]);
       k=k*;
    }else break;
  }
}
void ins(int x)
{
  top++;q[top]=x;pos[x]=top;push_up(top);
 }
void dijk()
{
  ;i<a[];i++)f[i]=inf;
  f[]=;;i<a[];i++)ins(i);
  while(top)
  {
    ];q[]=q[top];top--;
    pos[q[]]=;push_down();
    ;i<=n;i++)
     ]]>f[u]+(u+a[i])/a[])
     {
       f[(u+a[i])%a[]]=f[u]+(u+a[i])/a[];
       ];
       push_up(pos[xx]);
     }
  }
}
ll max(ll a,ll b)
{
  if(a>b)return a;else return b;
}
long long calc(long long x)
{
    int i;
    ;
    ;i<a[];i++)
        re+=max(0ll,x/a[]+(x%a[]>=i)-f[i]);
    return re;
}
int main()
{
  scanf("%d%lld%lld",&n,&bmin,&bmax);
  ;i<=n;i++)scanf("%lld",&a[i]);
  dijk();
  printf());
} 

这里是一个很懒的博主。。。相信po姐大家都知道我就不贴传送门了yep

[bzoj2118]墨墨的等式【dijk+堆】的更多相关文章

  1. 【BZOJ2118】墨墨的等式(最短路)

    [BZOJ2118]墨墨的等式(最短路) 题面 BZOJ 洛谷 题解 和跳楼机那题是一样的. 只不过走的方式从\(3\)种变成了\(n\)种而已,其他的根本没有区别了. #include<ios ...

  2. 【BZOJ2118】墨墨的等式 最短路

    [BZOJ2118]墨墨的等式 Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值 ...

  3. BZOJ2118墨墨的等式[数论 最短路建模]

    2118: 墨墨的等式 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 1317  Solved: 504[Submit][Status][Discus ...

  4. Bzoj2118 墨墨的等式

    Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 1488  Solved: 578 Description 墨墨突然对等式很感兴趣,他正在研究a1x1+ ...

  5. BZOJ2118: 墨墨的等式(同余类BFS)(数学转为图论题)

    2118: 墨墨的等式 Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 2944  Solved: 1206[Submit][Status][Discu ...

  6. BZOJ2118:墨墨的等式(最短路)

    Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...

  7. p2371&bzoj2118 墨墨的等式

    传送门(bzoj) 题目 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存 ...

  8. BZOJ2118: 墨墨的等式(最短路 数论)

    题意 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在非负整数解. So ...

  9. BZOJ2118: 墨墨的等式(最短路构造/同余最短路)

    Description 墨墨突然对等式很感兴趣,他正在研究a1x1+a2y2+…+anxn=B存在非负整数解的条件,他要求你编写一个程序,给定N.{an}.以及B的取值范围,求出有多少B可以使等式存在 ...

  10. 【BZOJ 2118】 墨墨的等式(Dijkstra)

    BZOJ2118 墨墨的等式 题链:http://www.lydsy.com/JudgeOnline/problem.php?id=2118 Description 墨墨突然对等式很感兴趣,他正在研究 ...

随机推荐

  1. MFC添加菜单事件

    双击draw.rc,就能看到.

  2. 根据复选框checkbox的选中状态来打开或关闭隐藏层

    HTML:  <input type="checkbox" id="check-expert"> <div id="expert&q ...

  3. Scrapy爬取美女图片 (原创)

    有半个月没有更新了,最近确实有点忙.先是华为的比赛,接着实验室又有项目,然后又学习了一些新的知识,所以没有更新文章.为了表达我的歉意,我给大家来一波福利... 今天咱们说的是爬虫框架.之前我使用pyt ...

  4. 整理 iOS 9 适配中出现的坑(图文)(转)

    作者:董铂然 本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的开发者所需要知道的 iOS 9 SDK 新特性.9月17日凌晨,苹果给用户推送了iOS9正式版,随着 ...

  5. ssh -v root@xxxxx 显示登录的细节

    [root@ok .ssh]# ssh -v root@10.100.2.84 OpenSSH_5.3p1, OpenSSL Feb debug1: Reading configuration dat ...

  6. 关于plsql连接oracle数据库session失效时间设置

    http://bbs.csdn.net/topics/350152441 http://www.linuxidc.com/Linux/2015-09/123286.htm

  7. MySQL zabbix

    http://liqingbiao.blog.51cto.com/3044896/1712080

  8. Feature hashing相关 - 2

    Bloom filter     思路 用多个不同hash 来记录,比如遇到一个 love 有4个hash function 映射到4个bit位置,如果所有位置都是1 那么认为之前已经遇到love这个 ...

  9. ASP.NET Web API 使用Swagger生成在线帮助测试文档

    Swagger-UI简单而一目了然.它能够纯碎的基于html+javascript实现,只要稍微整合一下便能成为方便的API在线测试工具.项目的设计架构中一直提倡使用TDD(测试驱动)原则来开发,sw ...

  10. Task使用小结

    Task是.NET推出数据任务处理的工作类,Task的使用也被越来越多的人讲解,这里仅仅介绍Task的部分使用介绍: 1.Task简单创建 --无返回值 Task.Factory.StartNew(( ...