枚举每种灯管,然后找到代价最小的那种灯管

贪心策略:灯管从0开始向右放置,如果末尾是不能放置灯管的结点,那么要往回找到最近一个可以放置灯管的结点,在那里放置灯管

所以先预处理每个不能放置灯管的结点对应的最近的可以放置灯管的结点,即要能够自动往前找下标

using namespace std;

int a[maxn];
int b[maxn];
int n,m,k; LL work(int ins)
{
LL ans=;
int id=;
while(id<=n)
{
if(id+ins>=n)
{
ans++;
break;
}
id=a[id+ins];
ans++; }
return ans*b[ins];
} int main()
{
while(~scanf("%d%d%d",&n,&m,&k))
{
lan(a,);
lan(b,);
For(i,,m)
{
int tem;
scanf("%d",&tem);
a[tem]=;
}
For(i,,k)
{
int tem;
scanf("%d",&b[i]);
}
if(a[]==)
{
printf("-1\n");
continue;
}
int id=;
int curlen=;
int maxlen=;
For(i,,n)
{
if(a[i]==)
{
a[i]=i;
id=i;
}
else
{
a[i]=id;
}
maxlen=max(maxlen,i-a[i]);
}
if(maxlen>=k)
{
printf("-1\n");
continue;
}
LL ans=1LL<<;
For(i,maxlen+,k)
{
ans=min(ans,work(i));
}
printf("%lld\n",ans);
}
return ;
}

暴力贪心+预处理自动机——cf990E的更多相关文章

  1. Codeforces Round #503 (by SIS, Div. 2) C. Elections (暴力+贪心)

    [题目描述] Elections are coming. You know the number of voters and the number of parties — n and m respe ...

  2. 2014 网选 5007 Post Robot(暴力或者AC_自动机(有点小题大作了))

    //暴力,从每一行的开始处开始寻找要查询的字符 #include<iostream> #include<cstdio> #include<cstring> #inc ...

  3. BZOJ 3507 通配符匹配(贪心+hash或贪心+AC自动机)

    首先可以对n个目标串单独进行处理. 对于每个目标串,考虑把模式串按'*'进行划分为cnt段.首尾两段一定得于原串进行匹配.剩下的cnt-2段尽量与最靠左的起点进行匹配. 对于剩下的cnt-2段.每段又 ...

  4. 【uva 10570】Meeting with Aliens(算法效率--暴力+贪心)

    题意:输入1~N的一个排列,每次可以交换2个整数,问使排列变成1~N的一个环状排列所需的虽少交换次数.(3≤N≤500) 解法:(又是一道我没打代码,光想和看就花了很久时间的题~QwQ)由于n很小,可 ...

  5. Codeforces Round #352 (Div. 2) C. Recycling Bottles 暴力+贪心

    题目链接: http://codeforces.com/contest/672/problem/C 题意: 公园里有两个人一个垃圾桶和n个瓶子,现在这两个人需要把所有的瓶子扔进垃圾桶,给出人,垃圾桶, ...

  6. Codeforces Beta Round #37 B. Computer Game 暴力 贪心

    B. Computer Game 题目连接: http://www.codeforces.com/contest/37/problem/B Description Vasya's elder brot ...

  7. HDU-1030 Delta-wave ,暴力贪心!

    Delta-wave 题意:用图中所示的数字填满这个三角形,求n到m的最短路径,也就是最少通过几条边. 思路:简单贪心就可以了,本人是先将每一层的左右端点用结构体存起来,然后分奇偶判断. 这题必须理清 ...

  8. HDU 1421 搬寝室 (线性dp 贪心预处理)

    搬寝室 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submis ...

  9. hdu 3697 Selecting courses (暴力+贪心)

    Selecting courses Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 62768/32768 K (Java/Others ...

随机推荐

  1. Install .NET Core Runtime on Linux Ubuntu 16.04 x64

    原文链接https://www.microsoft.com/net/download/linux-package-manager/ubuntu16-04/runtime-current nstall ...

  2. <%#Eval() %>的常用方法

    <%# %>用于数据绑定,通常是用在数据源控件里,比如GridView,Repeater等. 1.绑定Repeater 基础用法 <%# Eval("DriverName& ...

  3. python png与jpg的相互转换

    python将PNG格式的图片转化成为jpg """ 先来说一下jpg图片和png图片的区别 jpg格式:是有损图片压缩类型,可用最少的磁盘空间得到较好的图像质量 png ...

  4. python cv2 恢复手机图片

    找到可以恢复的手机图片 矩阵相乘 mat() {} 量化表 8*8 矩阵 与     2 4 2   2    16 16 16后面都是16的8*8矩阵相乘 计算变化的位是否可恢复 单独一张jpg的计 ...

  5. Dijkstra算法举例分析

    题目如下: 如上图,设A为源点,求A到其他各顶点(B.C.D.E.F)的最短路径.线上所标注为相邻线段之间的距离,即权值.(注:此图为随意所画,其相邻顶点间的距离与图中的目视长度不能一 一对等). 解 ...

  6. windows10,nodejs安装步骤

    系统: windows10 1.下载: https://nodejs.org/en/ 2.下载最新版本,根据你的系统选择32位或者64位: 3.建议选择源码源码安装,不选择编译后的安装 如: 4.进行 ...

  7. UML关系类图

    在UML类图中,常见的有以下几种关系: 泛化(Generalization),  实现(Realization),关联(Association),聚合(Aggregation),组合(Composit ...

  8. Element-UI 的树列表实现单选

    1. Element-UI 的 el-tree 组件当设置了 show-checkbox 属性以后,默认是只能多选的,如果我们想要将其改选为单选,就要进行一些特殊的处理,首先看效果图. 2. 组件代码 ...

  9. 2018-2019-2-20175323 java实验二《Java面向对象程序设计》

    单元测试 1.在IDEA中新建项目并输入单元测试的代码 2.在IDEA中下载Junit,我发现Junit已经存在了 3.新建test文件 遇到的问题 发现Junit红字解析不了 解决办法:查找到jun ...

  10. mybatis 处理CLOB/BLOB类型数据

    BLOB和CLOB都是大字段类型. BLOB是按二进制来存储的,而CLOB是可以直接存储文字的. 通常像图片.文件.音乐等信息就用BLOB字段来存储,先将文件转为二进制再存储进去.文章或者是较长的文字 ...