区间顺序枚举 hdu5696 区间的价值
来源:互联网 发布:一套办公软件多少钱 编辑:程序博客网 时间:2024/06/05 02:16
区间的价值
Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1293 Accepted Submission(s): 581
Problem Description
我们定义“区间的价值”为一段区间的最大值*最小值。
一个区间左端点在L ,右端点在R ,那么该区间的长度为(R−L+1) 。
现在聪明的杰西想要知道,对于长度为k 的区间,最大价值的区间价值是多少。
当然,由于这个问题过于简单。
我们肯定得加强一下。
我们想要知道的是,对于长度为1∼n 的区间,最大价值的区间价值分别是多少。
样例解释:
长度为1 的最优区间为2−2 答案为6∗6
长度为2 的最优区间为4−5 答案为4∗4
长度为3 的最优区间为2−4 答案为2∗6
长度为4 的最优区间为2−5 答案为2∗6
长度为5的最优区间为1−5 答案为1∗6
一个区间左端点在
现在聪明的杰西想要知道,对于长度为
当然,由于这个问题过于简单。
我们肯定得加强一下。
我们想要知道的是,对于长度为
样例解释:
长度为
长度为
长度为
长度为
长度为5的最优区间为
Input
多组测试数据
第一行一个数n(1≤n≤100000) 。
第二行n 个正整数(1≤ai≤109) ,下标从1 开始。
由于某种不可抗力,ai 的值将会是1∼109 内<b style="color:red;">随机产生</b>的一个数。(除了样例)
第一行一个数
第二行
由于某种不可抗力,
Output
输出共n 行,第i 行表示区间长度为i 的区间中最大的区间价值。
Sample Input
51 6 2 4 4
Sample Output
361612126//以a[i]为最大值,然后向两边扩展#include<cstdio>#include<iostream>#include<cstring>#define ll long longusing namespace std;int n;ll a[100005],dp[100005];void solve() {memset(dp,0,sizeof(dp));for(int i=1; i<=n; ++i)scanf("%lld",a+i);for(int i=1; i<=n; ++i) {dp[1]=max(dp[1],a[i]*a[i]);int l=i,r=i;ll mi=a[i];while(1) {if(r<n&&(l==1||a[r+1]>a[l-1])) mi=min(a[++r],mi);else mi=min(a[--l],mi);if(a[l]>a[i]||a[r]>a[i]) break;dp[r-l+1]=max(dp[r-l+1],mi*a[i]);if(r-l+1==n) break;}}for(int i=1; i<=n; ++i)printf("%lld\n",dp[i]);}int main() {while(~scanf("%d",&n))solve();return 0;}
阅读全文
1 0
- 区间顺序枚举 hdu5696 区间的价值
- Hdu5696 区间的价值(花式水)
- 分治法 区间的价值 hdu5696
- HDU5696 区间的价值(分治/单调队列)
- HDU5696:区间的价值(搜索 & 分治 & 思维)
- 百度之星初赛B hdu5696 区间的价值 分治思想
- HDU5696 2016百度之星初赛Astar Round2B 区间的价值
- hdu5696-分治-暴力剪枝-rmq-dfs-单调栈-区间的价值
- QAQ的区间价值
- QAQ的区间价值
- 区间的价值 V2
- HDU 5696 区间的价值
- HDU 5696 区间的价值
- HDU 5696 区间的价值
- HDU 5696 区间的价值
- 51nod区间的价值
- hdu 区间的价值(RMQ+扫描)
- HDU 5696 区间的价值 (DFS)
- Js_Dom(8)__Dom基础<画布canvas>
- Android/安卓仿淘宝直播点赞效果/qq空间点赞效果动画
- POJ 1157 LITTLE SHOP OF FLOWERS(动态规划)
- POJ-棋盘问题
- org.springframework.orm.hibernate4.HibernateOptimisticLockingFailureException: Batch update returne
- 区间顺序枚举 hdu5696 区间的价值
- JAVA serialVersionUID的作用
- 微信小程序 向左滑动删除功能
- 解决:vpn连接正常连接,本地连接断开问题
- 首期寄语 | 阿里金融云徐敏:聊聊“安全感”
- 56. Merge Intervals
- Hadoop(2)-HDFS
- 我的python3基础笔记之 【生成器 generator】 05
- Spark-Streaming 和Kafka连接的两种方式