CF1253E Antenna Coverage

题意:

现在有n个点,每个点的坐标为xi,以及一个范围值si,可以覆盖左右范围[xi-si,xi+si]
每次操作,可以花费代价1让第i个天线的si增加1,每个天线都可以进行多次操作。现在请问你最少需要花费多少代码,使得[1,m]内每个位置都被至少一个天线覆盖

题解:

参考题解
很奇妙的思路
我们设f[i]表示[1,i]被全部覆盖的最小花费,答案为fmf_{m}fm​
首先引入一个新的点,坐标为0,这样f的初始值就是f[i]=i
这个点很重要,其保证了fi+1<=fi+1f_{i+1}<=f_{i}+1fi+1​<=fi​+1,f是单调上升的,且该点的引入并未影响答案,因为我们最后的答案是f[n],而在最左侧加入一个点,f[n]=n相当于是最差情况,所以不会影响答案
然后我们可以进行转移:
对于点i,我们找在i前面的区间[l,r],(r要小于i),此时r要扩展x=i-r[]才能覆盖i,l也要扩展x,那么i就可以通过坐标j-1=l-x-1来更新
如图

正确性证明可以看参考题解

代码:

#include <bits/stdc++.h>
#include <unordered_map>
#define debug(a, b) printf("%s = %d\n", a, b);
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
typedef pair<int, int> PII;
clock_t startTime, endTime;
//Fe~Jozky
const ll INF_ll= 1e18;
const int INF_int= 0x3f3f3f3f;
void read(){};
template <typename _Tp, typename... _Tps> void read(_Tp& x, _Tps&... Ar)
{x= 0;char c= getchar();bool flag= 0;while (c < '0' || c > '9')flag|= (c == '-'), c= getchar();while (c >= '0' && c <= '9')x= (x << 3) + (x << 1) + (c ^ 48), c= getchar();if (flag)x= -x;read(Ar...);
}
template <typename T> inline void write(T x)
{if (x < 0) {x= ~(x - 1);putchar('-');}if (x > 9)write(x / 10);putchar(x % 10 + '0');
}
void rd_test()
{#ifdef ONLINE_JUDGE
#elsestartTime = clock ();freopen("data.in", "r", stdin);
#endif
}
void Time_test()
{#ifdef ONLINE_JUDGE
#elseendTime= clock();printf("\nRun Time:%lfs\n", (double)(endTime - startTime) / CLOCKS_PER_SEC);
#endif
}
const int maxn=100;
struct node{int x,s;
}a[maxn];
int f[200004];
int l[maxn];
int r[maxn];
int main()
{//    rd_test();int n,m;read(n,m);for(int i=1;i<=n;i++){read(a[i].x,a[i].s);l[i]=a[i].x-a[i].s; r[i]=a[i].x+a[i].s;}for(int i=1;i<=m;i++)f[i]=i;for(int i=1;i<=m;i++){for(int j=1;j<=n;j++){if(l[j]<=i&&i<=r[j]){f[i]=f[i-1];break;}if(r[j]<i){int x=i-r[j];f[i]=min(f[max(0,l[j]-x-1)]+x,f[i]);}}}cout<<f[m];//Time_test();
}

CF1253E Antenna Coverage相关推荐

  1. 3. Antenna Coverage

    题目链接:Antenna Coverage 数轴上有 n n n 个天线,每个天线都有一定的辐射范围,可以支付 k k k 的费用让某个天线的辐射半径增加 k k k,可以任意执行修改操作,问覆盖区间 ...

  2. 【POJ - 3020】Antenna Placement (匈牙利算法,二分图最小边覆盖)

    题干: The Global Aerial Research Centre has been allotted the task of building the fifth generation of ...

  3. IGS文件格式说明与下载方式- Renix atx ANTEX: The Antenna Exchange Format

    Index of /pub/data/formathttps://files.igs.org/pub/data/format/ https://kb.igs.org/hc/en-us/articles ...

  4. Antenna Placement

    题目描述: The Global Aerial Research Centre has been allotted the task of building the fifth generation ...

  5. Java Coverage(Cobertura)工具

    首先是下载Cobertura的jar包了,这个工具底层是JCoverage,熟悉Jcoverage的对这个也不会陌生的. Cobertura官网 http://cobertura.sourceforg ...

  6. 语句覆盖(Statement coverage)

    一.语句覆盖(Statement coverage) "语句覆盖"是一个比较弱的测试标准,它的含义是:选择足够的测试用例,使得程序中每个语句至少都能被执行一次.           ...

  7. coverage代码覆盖率测试工具:基本原理分析与使用

    coverage环境描述 本文环境python3.5.2 coverage版本4.3.1 coverage概述 代码覆盖率工具主要是为了检查测试用例覆盖了多少业务处理代码,在Django项目中,通过编 ...

  8. R语言Apriori算法关联规则挖掘:使用interestMeasure函数评估挖掘到的规则(包括覆盖率(coverage)和FishersExactTest)、置信度最高的五条规则(top five

    R语言Apriori算法关联规则挖掘:使用interestMeasure函数评估挖掘到的规则(包括覆盖率(coverage)和FishersExactTest).置信度最高的五条规则(top five ...

  9. 推荐系统+覆盖率(coverage)

    推荐系统+覆盖率(coverage) 覆盖率(coverage)是描述一个推荐系统对物品长尾的发掘能力. 覆盖率 如何评价推荐系统的优劣,可以通过推荐的内容覆盖率来衡量.当然它并不是唯一的准则.... ...

最新文章

  1. 中科院博导: 读博士感到痛苦的五个原因
  2. 【 C 】经典抽象数据类型(ADT)之堆栈(用静态数组实现堆栈)
  3. 【Python基础】科学计算库Scipy简易入门
  4. 使用Entity Framework Core访问数据库(DB2篇)
  5. 【渝粤题库】陕西师范大学209912 金融中介学Ⅰ 作业
  6. Apache 配置:是否显示文件列表
  7. 等保测评报告_昆仑健康保2.0要停售了,还值得买这款产品吗?有哪些优缺点?...
  8. 【优化算法】哈里斯鹰算法(HHO)【含Matlab源码 1309期】
  9. NumPy库---数组进阶操作
  10. 读取SAE J1939协议数据流
  11. 金网seo工具资源全套软件
  12. 斗地主发牌游戏编程java,自己做的斗地主游戏发牌C#程序
  13. 银行利息,活期,定期,本金知识集锦!
  14. LeetCode069——x的平方根
  15. java 汉字转拼音缩写_汉字转拼音 java 工具类
  16. 含百分比数字进度条的设计
  17. 手把手开始ROS仿真小车(一)仿真环境及小车搭建
  18. mybatis中大于小于的写法
  19. 常用的 shall 命令 及 语法
  20. Android 倒计时

热门文章

  1. 为什么越来越多的人消失在朋友圈?
  2. 想追身边的女孩?哥们我只能帮到你这份上了
  3. 爱因斯坦为什么不是普通人?看他怎么喝茶就明白了,差距太明显了!没法比.......
  4. 兄弟,就你这智商就别出轨了吧?
  5. bat脚本中获取上级目录_使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件...
  6. 【解决bug之路】JAVA 之 static
  7. 索尼服务器维护时间,索尼云服务器
  8. ppt扇形图怎么显示数据_前方高能!多维数据分析的神器雷达图PPT制作教程来啦!...
  9. 信管专业c语言考什么,计算机信息管理专业卫生事业单位招聘考试笔试模拟题(十)...
  10. mysql 变量 数据类型_浅谈mysql(二)数据类型